2.MySQL中的五种数据类型

MySQL的五种数据类型

整数类型

有五种整数类型,最常用的是tinyint、int:

数据类型中的m表示的是显示长度,不是存储长度,只有字段指定zerofill时有用

例如:int(3),实际值是2,在数据库存储为2,如果列指定为zerofill,查询结果显示002

整数类型 含义(有符号)
tinyint(m) 1个字节,范围(-128~127)
smallint(m) 2个字节,范围(-32768~32767)
mediumint(m) 3个字节,范围(-8388608~8388607)
int(m) 4个字节,
bigint(m) 8个字节

浮点数类型

有两种浮点数类型:

m:显示的总位数;d:小数的位数;整数部分现实的位数:m-d

浮点类型 含义
float(m,d) 单精度浮点类型,4个字节
double(m,d) 双精度浮点类型,8个字节

字符类型

有六种字符类型,常用char、varchar和text:

字符类型 含义
char(n) 固定长度,最多255个字符
varcahr(n) 可变长度,最多65535个字符,n表示最大长度
text 可变长度,最多65535个字符,无需指定长度
tinytext 可变长度,最多255个字符
mediumtext 可变长度,最多2的24次方-1个字符
longtext 可变长度,最多2的32次方-1个字符

char、varchar和text:

  • char长度固定,适合用于像电话号码、身份证号等的使用
  • varchar可变长度,可以设置最大长度,适用于长度可变的属性
  • text可变长度,当不知道属性的最大长度时,使用text

查询速度:char最快,varchar次之,text最慢

日期类型

有四种日期类型:

日期类型 含义
date 显示“年-月-日”
time 显示“时:分:秒”
datetime 显示“年-月-日 时:分:秒”
timestamp 时间戳,适用于跨时区存储和展示

二进制类型(BLOB)

  1. BLOB和TEXT存储方式不同,TEXT以文本存储,英文存储区分大小写;BLOB以二进制方式存储,不区分大小写
  2. BLOB存储的数据只能整体读出
  3. TEXT可以指定字符集,BLOB不用指定字符集
数据类型 说明
tinyblob 最大255B
blob 最大65K
mediumblob 最大16M
longblob 最大4G

Windows、linux基本一样通过修改文件my.ini或my.cnf文件,在文件中增加 max_allowed_packet=10M(就是最大10M,mysql默认似乎1MB,增加前先查找一下确保没有设置过)

posted @ 2022-01-19 18:41  只强  阅读(247)  评论(0编辑  收藏  举报