mysql--- 数据类型

一、数据类型

1、字符串

1)char(length)   定长字符串 ; 最长255字符 ; 存入的字符串长度不足时,右边会自动补空格

2)varchar(最大长度)  可变长字符串 ; 最大65535字节; 

扩展:

对存储要求不大,但在速度上有要求的可以使用char类型,反之可以用varchar类型来实例。

在用char字符类型时内容后面有空间时必须作相关处理,要不就会把空格自动删除 

在检索操作中那些填补出来的空格字符将被去掉

建议:myisam 存储引擎 建议使用固定长度,数据列代替可变长度的数据列。 
memory存储引擎 目前都使用固定数据行存储,因此无论使用char varchar列都没关系, 
innodb 存储引擎 建意使用varchar 类型 

varchar(M)类型的数据列里,每个值只占用刚好够用的字节再加上一个用来记录其长度的字节(即总长度为L+1字节).

3)text  最大长度65535个字节; 一般描述性文字比较多的时候,尽量使用text。使用text,在进行模糊查询的时候,并不会影响速度的

4)blob  大对象类型  ;最大长度65535个字元  ;

2、数字

1)unsigned  无符号

2)zerofill  填充0

在列中使用zerofill,如插入int(4),你插入1,显示0001;你插入55555,显示也是55555; 插入负数显示为0000,因为mysql自动增加UNSIGNED属性 UNSIGNED不能为负数,当你插入负数时就显示0,

3)tinyint   1字节 ; 

4)smllint  2字节 ;

5)int  4字节  ; 

int(5)

查询显示时,按5位显示,不足5位可以选择补0(zerofill),

例如: 23 à 00023,超过5位没有影响

6)bigint  8字节

7)float  

8)double

9)decimal( m , n )   定点数  ; 如果表示钱,应该用decimal  ;  总共m位,小数位n位 ; 字节量 m+2 ;

3、日期

1) date  年月日 ;

2)time  时分秒 ;

3)datetime  年月日时分秒 ;

4)timestamp  

时间戳,最大只到2038年,修改数据时,表中第一个timestamp字段会自动更新成系统当前时间(只有第一个)  ; timestamp不能放入空值

4、其他

1)mysql的数据表所有字段字节量之和不能超过65536

2)如果存在允许null(空值)的字段,表中需要一个额外字节来表示

3)varchar,255内,需要一个额外字节表示长度,超过255,需要两个额外字节表示长度

猜你喜欢

转载自blog.csdn.net/qq_24271537/article/details/81315625
今日推荐