Skip to content

Latest commit

 

History

History
20 lines (11 loc) · 1.41 KB

type.md

File metadata and controls

20 lines (11 loc) · 1.41 KB

数据类型

  • 对于整型来说TINYINTSMALLINTMEDIUMINTINTBIGINT等 指定长度是没有意义的,它不会限制值的范围,只会影响显示字符的个数,比如int(10) 如果不足十位的会补足0(通过zerofill属性来显示)。值得注意的是,如果字符少于位数则会补足0,如果超过了宽度则不受影响。

  • 对于实数类型来说FLOAT(四个字节)、DOUBLE(八个字节)、DECIMAL(可以存储比BIGINT还要大的整型,可以存储精确的小数,16字节,精度较高的运算一般用decimal)

  • 字符串类型VARCHARCHARTEXTBLOB

char的长度是固定的,最大为255个字符,而char的最大长度是255*每个字符占用的字节数,比如utf8编码就是255*3,gbk就是255*2
varchar代表变长,最大的长度为65535个字节,如果采用varchar的话需要用1-2个字节来存储长度信息(255个字节一下需要1个字节,超过255需要两个字节)。而varchar最大字符数也是根据编码来决定(注意:char和varchar后面跟的数字都是指字符数),如果是utf8编码,varchar最大字符数=65535/3约为21845个字符,如果是gbkvarchar最大字符数=65533/2约为32766个字符
text
blob
text和blob类型查询的时候会产生临时表,尽量不要使用

  • 日期和时间类型(尽量使用TIMESTAMP,比DATETIME空间效率高)