Mysql字段

------------恢复内容开始------------

mysql类型以及所占字节如下:

CHAR  0-255字节定长字符串

VARCHAR  0-65535字节变长字符串

TINYBLOB  0-255字节不超过255个字符的二进制字符串

TINYTEXT  0-255字节短文本字符串

BLOB  0-65535字节二进制形式的长文本数据

TEXT  0-65535字节长文本数据

MEDIUMBLOB  0-16777215字节二进制形式的中等长度文本数据

MEDIUMTEXT  0-16777215字节中等长度文本数据

LONGBLOB  0-4294967295字节二进制形式的极大文本数据

LONGTEXT  0-4294967295字节极大文本数据

 

MySQL 5.0以上版本对varchar和char的处理

1、与编码有关,一般都用UTF-8

UTF-8:一个汉字=3个字节,英文是一个字节

GBK:一个汉字=2个字节,英文是一个字节

2、在MySQL中 varchar(n)和char(n)表示n个字符,无论汉字和英文,Mysql都能存入n个字符,仅是实际字节长度有所区别。

3、 MySQL 的 char(n) 和varchar(n) 可以直接存储 n 个汉字. 而不是 n/3或者 n/2 个,mysql 屏蔽了具体的存储细节,而直接以实际字符的个数来决定char存储的个数。

 

Text、MEDIUMTEXT、LONGTEXT

上面三个如果是UTF-8编码的话,最多可以储存的汉字数就必须除以三

Text  可以存放21845个汉字,要是存放21846个汉字,会报Data too long,可以存放65535个字母,要是存放65536个字母的话,会报Data too long

MEDIUMTEXT  5592405个汉字

LONGTEXT  143165576个汉字

posted @ 2022-03-08 10:37  苏黎世湖畔  阅读(114)  评论(0编辑  收藏  举报