整型
不同类型存储范围不一样:
# 默认情况下整型是带负号的
tinyint <<< smallint <<< mediumint <<< int <<< bigint
tinyint:1个字节------>8位------>2^8----> 256----->0-255----->-128-127
smallint:2个字节存储----->16位---->2^16 ----> 65536----->0-65535---->-32768-32767
int:4个字节------>32位----->2^32----> 21...---->
bigint:8个字节----->64为----->2^64---->
# 整型的存储范围与括号中的数字没有任何关系,代表的是数据展示的位数
浮点型
种类:
float double decimal
# 三者最大的区别就是精确度不同,一般使用decimal
# 精确度:decimal >>> double >>> float
语法:
float(255,30) # 255表示的是存储的位数,30代表的是小数位数
double(255,30); # 255表示的是存储的位数,30代表的是小数位数
decimal(65, 30); # 65表示的是存储的位数,30代表的是小数位数
字符串
种类:
char() , varchar()
char(4): 是定长,不超过4位就用空格填充到4位,超过4位就保留四位(此为非严格模式),或者报错(此为严格模式)
varchar(4): 是可变长,不超过4位就有几位存几位,超过4位就保留四位(此为非严格模式),或者报错(此为严格模式)
严格模式
查看严格模式:
方法1:select @@sql_mode;
方法二:show variables like '%mode%' # 模糊查询,会查询变量中带有mode的
设置严格模式:
1.永久修改:修改配置文件
2.临时修改:
set global sql_mode='STRICT_TRANS_TABLES,PAD_CHAR_TO_FULL_LENGTH'; # 记得重启服务端
日期类型
种类:
datetime:年月日 时分秒
date:年月日
time:时分秒
year:年份
枚举类型
种类:
1. enum:多选一
create table t15 (id int,
hobby enum('tangtou', 'hejiu', 'xijio', 'chouyan')
);
insert into t15 values(1, 'tangtou');
2. set:多选多
create table t16 (id int,
hobby set('tangtou', 'hejiu', 'xijio', 'chouyan')
);
标签:存储,重要,decimal,30,数据类型,----,-----,MySQL,255
From: https://www.cnblogs.com/yexinli/p/17545989.html