1、 问:varchar(255)可以保持多少个汉字?
MySQL版本 < 4.1: VARCHAR以字节为单位存储,所以假设全部为常用汉字(UTF-8 3字节编码长度),则VARCHAR(255)共可存放约85个汉字。
MySQL版本 >= 4.1: VARCHAR以字符为单位存储,假设输入仍然为常用汉字,则VARCHAR(255)可以存放255个汉字。
2、问:MySQL中int(10)与int(11)有什么区别吗?
int默认是10位的长度,如int(3),即代表数值前面补0,直到够10位的长度,由此可以得出int(10)和int(11)只是显示的长度不同而已,在内存中都是占4个字节30位。
例子:int(3) ==> 003,100,200,999,即最大为3位数字。
3、问:double(6,2)代表什么意思?
表示规定显示的值不会超过6位数字,小数点后面带有2位数字;
即共占6位数字,小数点后占两位,小数点前占4位。
例子:double(6,2) ==> 1234.56,3333.44,5566.78
4、问:文字过多应该用什么类型存储?
可以使用TEXT,BLOB俩种类型来存储长文本。
1.text分为4种类别:TINYTEXT 256bytes,TEXT 64kb,MEDIUMTEXT 16Mb,LONGTEXT 4GB
2. BLOB也分为4种类别:TINYBLOB,BLOB,MEDIUMBLOB,LONGBLOB
且blob 保存的是二进制数据,利用这个特性,可以把图片存储到数据库里面。text只能存储文本