02-010 MySQL_基础_数据类型

分类

数值型:
整形:tinyint(有符号-128-127无符号0-255,1字节)、smallint(2字节)、mediumint(3字节)、int/integer(4字节)、bigint(8字节)
小数:定点型、浮点型

字符型:
较短的字符型:char、 varchar
较长的字符型:text 、blob

日期型
选择原则:选择类型越简单越好,能保存数值的类型越小越好(节省空间)。

数值型

1.整型
create table tab_int(id int, num int unsigned);#unsigned 无符号
①默认有符号,无符号要加unsigned;
②插入的值超出整型范围,报错out of range,插入临界值(5.7报错不插入临界值);
③如果不设置长度会有默认长度;
create table tab_int(id int(7) zerofill, num int(7) zerofill);
zerofill 默认无符号,左侧不足位数用0补充
2.小数
①浮点型
float(M,D)
double(M,D)
②定点型
dec(M,D)和下面一样
decimal(M,D)
D小数点后的位数,M整数位数+小数位数,超过范围则插入临界值;
M和D都可以省略,decimal默认(10,0),float和double根据结果决定精度;
定点型精确度较高,要求数值精度高时用定点型,如货币计算;

字符型

1.较短的字符型:
char(M)固定长度,长度不写默认1,耗费空间,效率高点;
varchar(M)可变长度,长度要写,节省空间,效率地点;
M标识最长的字符数
binary:较短的二进制
varbinary:较短的二进制
ENUM(‘A’,‘B’,‘C’):枚举类型(不区分大小写),其中一个
set(‘A’,‘B’,‘C’,‘d’):集合类型(不区分大小写),其中一个或者多个,多个用逗号连接

2.较长的字符型:
text系列 、blob(较大二进制)

日期型

date:日期
time:时间
year:年
timestamp:日期+时间
datetime:日期+时间

字节 范围 时区的影响
datetime 8 1000-9999
timestamp 4 1970-2038 有影响

show variable like ‘time_zone’;
set ‘time_zone’=’+9:00’;

学习整理于MySQL 基础+高级篇.

发布了53 篇原创文章 · 获赞 0 · 访问量 396

猜你喜欢

转载自blog.csdn.net/weixin_40778497/article/details/103595593
今日推荐