整型

mysql的整型是默认带符号的。

mysql主要数据类型(整型、浮点数、字符串、日期)

有时会看到定义整型的写法是int(11),无论括号里的数字N是多少,int类型永远占用4个字节。括号里的N代表的是显示宽度,没什么用。

浮点数

mysql主要数据类型(整型、浮点数、字符串、日期)

char和varchar类型

类型 大小 用途
CHAR 0-255字节 定长字符串
VARCHAR 0-65535 字节 变长字符串
TEXT 0-65 535字节 长文本数据(变长)

char和varchar的区别

  1. char(n) 固定长度,比如char(4)不管是存入几个字符,都将占用4个字节;varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),。因此char的查询效率更高。
  2. char(n) 若存入字符数小于n,则以空格补于其后,查询之时再将空格去掉(目的是满足固定长度)。所以char类型存储的字符串末尾不能有空格,varchar不限于此。

varchar与text的区别

varchar存放在数据行中,与其他字段的属性相邻存放,检索效率很高。而text有可能被存放在磁盘的另一处地方,数据表中只存放指向text的指针,检索效率比较低。一般来说,用varchar放比较短的字符串,用text放比较长的文本。

结论

1、经常变化的字段用varchar;

2、知道固定长度的用char;

3、超过255字节的只能用varchar或者text;

4、能用varchar的地方不用text;

5、能够用数字类型的字段尽量选择数字类型而不用字符串类型,这会降低查询和连接的性能,并会增加存储开销。这是因为引擎在处理查询和连接回逐个比较字符串中每一个字符,而对于数字型而言只需要比较一次就够了;

日期类型

mysql主要数据类型(整型、浮点数、字符串、日期)

相关文章: