百木园-与人分享,
就是让自己快乐。

MySQL中常用的数据类型

在写sql语句的时候,数据类型是避不可少的一个环节,以下是我在学习的过程中总结的数据类型,仅供参考:

  • 数值类型

 

类型 有符号(signed)范围 无符号(unsigned)范围 描述
tinyint (-128,127) (0,255) 小整数值
smallint (-32768,32767) (0,65535) 大整数值
mediumint (-8388608,8388607) (0,16777215) 大整数值
int 或 integer (-2147483648,2147483647) (0,4294967295) 大整数值
bigint (-2^63,2^63-1) (0,2^64-1) 极大整数值
float (-3.402823466 E+38,3.402823466351 E+38) 0 和 (1.175494351 E-38,3.402823466 E+38) 单精度浮点数值
double (-1.7976931348623157 E+308,1.7976931348623157 E+308) 0 和 (2.2250738585072014 E-308,1.7976931348623157 E+308) 双精度浮点数值
decimal 依赖于M(精度)和D(标度)的值 依赖于M(精度)和D(标度)的值 小数值(精确定点值)

 

在上表可以看到每一个类型都是有自己相对应的范围,大于某个数值之后不能再使用原类型了,需注意类型的范围。

 

  • 字符串类型
类型 描述
char 定长字符串
varchar 变长字符串
tinyblob 不超过255个字符的二进制数据
tinytext 段文本字符串
blob 二进制数据的长文本数据
text 长文本数据
mediumblob 二进制形式的中等长度文本数据
mediumtext 中等长度文本数据
longblob 二进制形式的极大文本数据
longtext 极大文本数据

 字符串类型中char与varchar使用频率最高,它们的区别在于是否为定长字符串,在描述某一确定值时,比如身份证号码,在我国身份证号为18为,即使用char,比如姓名,字符长度不一,使用varchar。二进制文本现在使用频率已经大大降低,可以不做硬性要求。

  • 日期时间类型
类型 范围 格式 描述
date 1000-01-01至9999-12-31 yyyy-mm-dd 日期值
time -838:59:59至838:59:59 hh:mm:ss 时间值或持续时间
year 1901至2155 yyyy 年份值
datetime 1000-01-01 00:00:00至9999-12-31 23:59:59 yyyy-mm-dd hh:mm:ss 混合日期和时间值
timestamp 1970-01-01 00:00:01至2038-01-19 03:14:07 yyyy-mm-dd hh:mm:ss 混合日期和时间值,时间戳

 

在日期时间类型中特别注意year的范围是1901-2155,超出范围就需使用date。

数据类型至关重要,不容忽视。


来源:https://www.cnblogs.com/hxymysql/p/16063021.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » MySQL中常用的数据类型

相关推荐

  • 暂无文章