mysql 常用数据类型简介

原则:所选择的类型越简单越好,能保存的数值类型越小越好;

 

整型特点:

1、如果不设置无符号还是有符号,默认有符号,如果需要设置无符号,需要用unsigned约束

2、如果插入数值超出范围,会报out of rang警告,但是会插入范围的临界值

3、如果不设置长度,会有默认长度,长度代表了显示的最大宽度,如果不够,会用0在左边填充,但必须搭配zerofill使用;

 

小数特点:

浮点数:float(M,D);double(M,D)

定点数:dec(M,D)

1、M代表整数部位+小数部位的长度;D代表小数部位的长度;如果超出范围则插入临界值;

2、M和D都可以省略,如果是dec,则M默认为10,D为0;如果是float和double,则会根据插入数值的精度来

3、定点型的精确度较高,如果要求插入数值精度较高的运算如货币运算

 

字符型:

enum枚举:创建字段时,预先设置好枚举的值,之后该字段中只能存储设置好的值;比如:sex enum('男','女'),则该sex字段只能插入男或女;(值是字母的话,不区分大小写)

 

set集合:和枚举类似,但可以插入设置好的多个值,自动逗号分隔;比如 n set('a','b','c','d'),在插入该字段值的时候可以是values('a'),也可以是values('a','b','c'),此时存入的值为a,b,c;(值是字母的话,不区分大小写)

 

char(M):定长,M表示最大可存储的字符数,存入少于该字符数也按M字符数占用空间,不可超出M字符数,超出报错;

varchar(M):可变长,M表示最大可存储的字符数,存入字符数按实际字符数+1来占用空间(1是用来存储可变长),不可超出M字符数,超出报错;

 

日期型:

date:只保存日期,如2020-03-22;

time:只保存时间,如22:22:22;

year:只保存年,如2020

 

datetime:保存日期+时间:8字节:范围1000-9999:不受时区影响

timestamp:保存日期+时间:4字节:范围1970-2038:受时区影响

时区影响:会根据mysql设置的时区不同,查出的时间不同

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值