文章目录
1.数据类型分类
2.数值类型
2.1 tinyint类型
数值越界测试:
create table tt1(num tinyint);
insert into tt1 values(1);
insert into tt1 values(128);
select * from tt1;
可以看到,当插入的数据越界时,直接报错,插入失败。
说明:
在MySQL中,整型可以指定是有符号的和无符号的,默认是有符号的。
可以通过UNSIGNED来说明某个字段是无符号的
无符号案例:
create table tt2(num tinyint unsigned);
insert into tt2 values(-1);
insert into tt2 values(255);
select * from tt2;
注意:尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其如此,还不如设计时,将int类型提升为bigint类型。
2.2 bit类型
基本语法:
bit[(M)] : 位字段类型。M表示每个值的位数,范围从1到64。如果M被忽略,默认为1。
示例:
create table tt4 ( id int, a bit(8));
insert into tt4 values(10, 10);
select * from tt4;
这里bit类型是按照十六进制来显示的,但数据仍然是以二进制位的形式存储的,只是在显示时进行了转换。
可以使用MySQL的BIN()函数。这个函数会将BIT类型的值转换为二进制字符串表示。
2.3小数类型
2.31float
语法:
float[(m, d)] [unsigned] : M指定显示长度,d指定小数位数,占用空间4个字节
示例:
create table tt6(id int, salary float(4,