数据类型

数据类型是指列、存储过程的参数、表达式和局部变量的数据特征,它决定了数据的存储格式,代表了不同的信息类型。

——————————————————————————————————————————————————————————

在mysql当中数据类型大概有以下几类

————————————————————————————————————————————

1.整型

————————————————————————————————————————————————————————————————

浮点型

————————————————————————————————————————————————————

日期时间型

上述的几种类型都有自己的存储的范围,每个存储范围都不同,TIMESTAMP指的是时间戳。

DATE:经常用起来存储时间(1000~9999.12.31)

DATETIME:支持的时间是1000.0.0.0到9999.12.31.11.59

 DATWTEMP:1970~2037之间的一个时间。

TIME :8385959~8385959之间的一个过程

————————————————————————————————————————————————————————————————

字符型

——————————————————————————————————————————————————————————————————

数据表

 

mysql> PROMPT \u@\h \d>
PROMPT set to '\u@\h \d>'
root@127.0.0.1 (none)>SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| t2 |
| test |
+--------------------+
5 rows in set (0.12 sec) root@127.0.0.1 (none)>USE t2;
Database changed
root@127.0.0.1 t2>SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| t2 |
+------------+
1 row in set (0.00 sec) root@127.0.0.1 t2>

——————————————————————————————————————————————

root@127.0.0.1 t2>CREATE TABLE t2(
-> username VARCHAR(20),
-> age TINYINT UNSIGNED,
-> salary FLOAT(8,2) UNSIGNED
-> );
Query OK, 0 rows affected (0.22 sec)

VARCHAR(20)指的是我们的名字的长度有20位。

TINYINT UNSIGNED指的是我们的年龄不需要包含负数。

FLOAT(8,2)指的是我们的整个工资一共有8位,其中小数点后面有2位。

——————————————————————————————————————————————

查看数据表

MYSQL 查看数据表:
SHOW TABLES [FROM db_name]
root@127.0.0.1 t2>SHOW TABLES;
+--------------+
| Tables_in_t2 |
+--------------+
| t2 |
+--------------+
1 row in set (0.00 sec) root@127.0.0.1 t2>SHOW TABLES FROM MYSQL;
+---------------------------+
| Tables_in_mysql |
+---------------------------+
| columns_priv |
| db |
| event |
| func |
| general_log |
| help_category |
| help_keyword |
| help_relation |
| help_topic |
| host |
| ndb_binlog_index |
| plugin |
| proc |
| procs_priv |
| proxies_priv |
| servers |
| slow_log |
| tables_priv |
| time_zone |
| time_zone_leap_second |
| time_zone_name |
| time_zone_transition |
| time_zone_transition_type |
| user |
+---------------------------+
24 rows in set (0.11 sec)

——————————————————————————————————————————

查看数据表的结构

1.查看数据表列表: SHOW TABLE [FROM db_name];
2.查看数据表的结构:SHOW COLUMNS FROM tbl_name;
3.查看当前数据库中的表:SHOW TABLES;
root@127.0.0.1 t2>SHOW COLUMNS FROM t2
-> ;
+----------+---------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+---------------------+------+-----+---------+-------+
| username | varchar(20) | YES | | NULL | |
| age | tinyint(3) unsigned | YES | | NULL | |
| salary | float(8,2) unsigned | YES | | NULL | |
+----------+---------------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

——————————————————————————————————————————————————————————

修改数据表

往数据表里面插入数据:插入记录
insert [into] tbl_name[(col_name,....)] values(val,...)省略列名,则必须给所有字段赋值

root@127.0.0.1 t2>INSERT t2 VALUES('TOM',25,7857.5);
Query OK, 1 row affected (0.10 sec)
root@127.0.0.1 t2>INSERT t2(username,age) VALUES('John',25);
Query OK, 1 row affected (0.14 sec)

记录查找
selece expr,....from tbl_name

root@127.0.0.1 t2>SELECT * FROM t2;
+----------+------+---------+
| username | age | salary |
+----------+------+---------+
| TOM | 25 | 7857.50 |
| John | 25 | NULL |
+----------+------+---------+
2 rows in set (0.00 sec)

——————————————————————————————————————————————————————

空值与非空值

NOT NULL意味着我们在给它赋值的时候是不能够为空的

————————————————————————————————————————————————

自动编号

root@127.0.0.1 t2>CREATE TABLE tb1(
-> id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
-> username VARCHAR(30) NOT NULL
-> );
Query OK, 0 rows affected (0.23 sec) root@127.0.0.1 t2>INSERT tb1(username) VALUES('Tom');
Query OK, 1 row affected (0.14 sec) root@127.0.0.1 t2>INSERT tb1(username) VALUES('Dean');
Query OK, 1 row affected (0.14 sec) root@127.0.0.1 t2>SELECT * FROM tb1;
+----+----------+
| id | username |
+----+----------+
| 1 | Tom |
| 2 | Dean |
+----+----------+
2 rows in set (0.00 sec)

——————————————————————————————————————————————————————————————

初涉唯一的约束

root@127.0.0.1 t2>CREATE TABLE tb4(
-> id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
-> username VARCHAR(20) NOT NULL UNIQUE KEY,
-> age TINYINT UNSIGNED);
Query OK, 0 rows affected (0.10 sec) root@127.0.0.1 t2>SHOW COLUMNS FROM tb4;
+----------+----------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+----------------------+------+-----+---------+----------------+
| id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| username | varchar(20) | NO | UNI | NULL | |
| age | tinyint(3) unsigned | YES | | NULL | |
+----------+----------------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)

————————————————————————————————————————————————

初涉默认约束

root@127.0.0.1 t2>CREATE TABLE tb5(
-> id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
-> username VARCHAR(20) NOT NULL UNIQUE KEY,
-> sex ENUM('','','') DEFAULT ''
-> );
Query OK, 0 rows affected (0.21 sec) root@127.0.0.1 t2>SHOW COLUMNS FROM tb5;
+----------+----------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+----------------------+------+-----+---------+----------------+
| id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| username | varchar(20) | NO | UNI | NULL | |
| sex | enum('','','') | YES | | 3 | |
+----------+----------------------+------+-----+---------+----------------+
3 rows in set (0.00 sec) root@127.0.0.1 t2>INSERT tb5(username) VALUES('Tom');
Query OK, 1 row affected (0.18 sec) root@127.0.0.1 t2>SELECT * FROM tb5;
+----+----------+------+
| id | username | sex |
+----+----------+------+
| 1 | Tom | 3 |
+----+----------+------+
1 row in set (0.00 sec)

mysql之数据类型以及操作数据表的更多相关文章

  1. MySQL之数据类型与操作数据表

    上节回顾 一.数据类型 什么是数据类型? 数据类型是指列.存储过程参数.表达式和局部变量的数据特征,它决定了数据的存储格式,代表了不同的信息类型. 所谓数据类型,最直接的理解就是我们有些是存储数字的, ...

  2. MySQL(二) —— 数据类型与操作数据表

    数据类型 数据类型是指列.存储过程参数.表达式和局部变量的数据特征,它决定了数据的存储格式,代表了不同的信息类型. 整型:TYNINT(-2^7 ~ 2^7-1); SMALLINT(-2^15 ~ ...

  3. MySQL学习之路(二)——数据类型和操作数据表

    数据类型和操作数据表 2.1 MySQL类型之整型 2.2 MySQL数据类型之浮点型 2.3 日期时间型 DATE 1支持时间:1000年1月1日~9999年12月31日 DATETIME 3 支持 ...

  4. mysql 操作sql语句 操作数据表

    #2. 操作文件 先切换到文件夹下:use db1 查看当前所在的数据库 mysql> select database(); +------------+ | database() | +--- ...

  5. mysql 操作sql语句 操作数据表中的内容/记录

    #3. 操作文件中的内容/记录 往哪张表去插入 insert into 表名指定字段(id,name) 插入要加values(针对前面字段插入)(2,mike); insert into t1(id, ...

  6. MySQL入门(4)——操作数据表

    MySQL入门(4)--操作数据表 创建数据库 CREATE [TEMPORARY] TABLE [IF NOT EXISTS] 数据库名 [(create_definition,...)] [tab ...

  7. MYSQL操作数据表中的记录

    36:操作数据表中的记录插入记录   INSERT INTO 表名  VALUES();   或者INSERT 表名  VALUES();  UPDATE更新记录(单表更新)  DELETE删除记录( ...

  8. MySQL 命令操作数据表

    MySQL 命令操作数据表 1.查看表信息 desc hs_user_credit_info; 2.新增表字段 alter table hs_credit_order add search_relat ...

  9. Python进阶----数据库引擎(InnoDB),表的创建,mysql的数据类型,mysql表的约束

    Python进阶----数据库引擎(InnoDB),表的创建,mysql的数据类型,mysql表的约束 一丶MySQL的存储引擎 什么是存储引擎:    MySQL中的数据用各种不同的技术存储在文件( ...

随机推荐

  1. react login page demo

    1. login form import React from "react"; import {Row, Col} from "antd"; import { ...

  2. js 设置日期函数

    前三十天: var now = new Date(); var prev = now.setDate( now.getDate() - 30 ) vm.sDate = comm.getFormatDa ...

  3. 记录下工作中使用的pdf.js

    在工作中遇到一个通过网页的形式浏览pdf文件以及图片的需求,图片简单,直接通过网页的形式打开这个图片的URL即可.而pdf这边,通过查询发现有一个名为pdf.js的神器. 简单介绍下,它可以在html ...

  4. Linux 下安装composer

    1.下载composer.phar文件. 2.将composer.phar文件上传linux. 3.执行 php composer.phar 4.全局安装:mv composer.phar /usr/ ...

  5. pod上传私有spec文件库

    一.验证 function podlint() { pod lib lint $1.podspec --use-libraries --allow-warnings --verbose --sourc ...

  6. CentOS 6+Hadoop 2.6.0分布式集群安装

    1.角色分配 IP Role Hostname 192.168.18.37 Master/NameNode/JobTracker HDP1 192.168.18.35 Slave/DataNode/T ...

  7. gitlab Failed to register this runner. Perhaps you are having network problems runner 注册失败问题解决

    1. 低版本安装地址 https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v1.11.2/index.html   2. 使用 yum ...

  8. 给System.Timer类的Elapsed事件加锁

    背景: 最近在做一个项目,程序是命令行程序,在主程序中开一个线程,这个线程用到了System.Timer类的Elapsed事件,根据指定时间间隔循环去查询数据库,找符合条件的记录,把记录组织成xml对 ...

  9. CentOS 7 : Docker私有仓库搭建和使用

    系统环境: CentOS 7.2 192.168.0.179:docker仓库 192.168.0.60:客户端 安装并启动docker yum -y install docker systemctl ...

  10. 参数化防SQL注入

    private void AddStudent(){ string strName =txtName.Text.Trim(); string strPwd = txtPwd.Text.Trim(); ...