MYSQL的数据类型

MySQL的数据类型大概可以分为:数值类型,时间/日期类型,字符串类型

1.数值类型

mysql的数值类型可以分为:整形和实数。MySQL支持确认精度的值(定点数)和近似精度的值(浮点数),确认精度的类型有DECIMAL类型,近似精度的数值类型有float和double

  • 整型                                                                                                                                                                                  主要有TINYINT,SMALLINT,MEDIUMINT,INT,BINGINT等 

数据类型和存储范围
类型存储范围-有符号存储范围-无符号字节
TINYINT-128  -- 1270-2551
SMALLINT-2^15 -- 2^15-10-655352
MEDIUMINT-2^23  -- 2^23
0-2^24-13
INT-2^31  -- 2^31
0-2^32-14
BIGINT-2^63  -- 2^63
0-2^64-18
因为mysql内部只支持到秒级别的精度,所以可以用bigint来存储精度到毫秒的时间戳。当我们在设计数据库的时候要充分考虑保留足够的范围来应对未来的数据增长需求。

  • DECIMAL和NUMERIC(定点数)

所谓定点数就是指数据的小数点的位置是不变的。也就是说小数点后面的位数是固定的,例如DECIMAL(M,D),M即为精度长度不包括小数点后的,D就是标度,指小数点后面的固定长度

  • FLOAT和DOUBLE(浮点型)

对于浮点类型,单精度使用4个字节而双精度使用8个字节,浮点数可以表示更大数据类型,为了保证最大可能的移植性,FLOAT后面尽量不要规定精度和标度,浮点数比定点数使用的空间更少,弹性更大,所以尽量选择浮点。除非货币数据

2.时间日期类型

主要有DATE,TIME,DATETIME,TIMESTAMP,YEAR类型

  • 当同时需要日期+时间的时候选择datetime类型,占8个字节
  • 当只需要日期的时候选择date类型,占3个字节
  • 当只需要时间的时候选择time类型,占3个字节
  • year占1个字节
  • TIMESTAMP用于insert、update记录日期和时间  占8个字节

3.字符串类型

主要有char,varchar,binary,varbinary,blob,text,enum和set

  • char和varchar的区别 

char和varchar的数据类型相似,但是他们保存和检索数据的方式不同。char是固定字符串长度。长度范围为0-255个字符。char类型适合存储数据长度差不多的值,例如MD5值。varchar类型是可变长度的字符串。长度范围是0-65535,







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值