数据类型主要给列上添加域完整性约束,开发者设置列的数据类型之后,DBMS会对添加的数据进行合法性验证,如果不合法则报错,拒绝添加。
数值型
- 5种整型 tinyint、smallint、mediumint、int和bigint,主要区别是取值范围不同,还可以在类型前添加一个限定词unsigned,不允许添加负数
- 3种浮点型:float和double不能精确存放,decimal和numeric可以精确存放。
可在类型名后面添加括号,其中包含一个正整数,这里的含义是当进行查询时自动将空格扩充到5个长,如果真是数据长度大于5,则按照实际输出
mysql> create table t1(id int(3));
Query OK, 0 rows affected (0.05 sec)
mysql> insert into t1 values(2);
Query OK, 1 row affected (0.01 sec)
mysql> insert into t1 values(22);
Query OK, 1 row affected (0.00 sec)
mysql> insert into t1 values(222);
Query OK, 1 row affected (0.00 sec)
mysql> insert into t1 values(2222);
Query OK, 1 row affected (0.00 sec)
mysql> select * from t1;
+------+
| id |
+------+
| 2 |
| 22 |
| 222 |
| 2222 |
+------+