数据类型

1. 数值类型

在MySQL中,整型可以指定是有符号的和无符号的,默认是有符号的。 可以通过UNSIGNED来说明某个字段是无符号的。
注意越界情况;
2. 文本类型
1. 基本使用:
char(L): 固定长度字符串,L是可以存储的长度,单位为字符,大长度值可以为255
varchar(L): 可变长度字符串,L表示字符长度,大长度65535个字节
测试char:

注:char(2) 表示可以存放两个字符,可以是字母或汉字,但是不能超过2个。 最多只能是255。
测试varchar:

注:varchar(6) 表示可以放6个字符,可以是字母,也可以是汉字,但是不能超过6个。
2. varchar 的存储长度
varchar长度可以指定为0到65535之间的值,但是有1 - 3 个字节用于记录数据大小,所以说有效字节数 是65532。
当我们的表的编码是utf8时,varchar(n)n大值是65532/3=21844[因为utf中,一个汉字占用3个字 节],如果编码是gbk,varchar(n)n大是65532/2=32766(因为gbk中,一个汉字占用2字节)。

注:mysql规定,一行记录的长度不能超过65535。
一般情况下,varchar的最大长度不要超过15000,如果超过的话,我们用Text类型。
3. char 和 varchar 的比较
char 和varchar 存储长度的比较:

(1)如果数据确定长度都一样,就使用定长,比如身份证,手机号,md5加密的密码... ...
(2)如果数据长度有变化,就使用变长,比如,名字,地址,但是你要保证长的能存的进去。
(3) 定长的磁盘空间比较浪费,但是效率高。
(4)变长的磁盘空间比较节省,但是效率低。
3. 字符串类型
字符串类型包括枚举(enum)和 集合(set),一般情况下,枚举适用于单选,比如性别只能选择男或女;集合适用于多个选择,比如个人的爱好可以有多个。
利用show create table 表名来查看创建表的语句:

4. 时间日期
常用的日期有如下三个:
(1)datetime 时间日期格式 'yyyy-mm-dd HH:ii:ss' 表示范围从1000到9999,占用八字节
(2)date:日期 'yyyy-mm-dd',占用三字节 timestamp:
(3)时间戳,从1970年开始的 yyyy-mm-dd HH:ii:ss 格式和datetime完全一致,占用四字节
MySQL数据类型详解
本文详细介绍了MySQL中的数据类型,包括数值类型、文本类型、字符串类型和时间日期类型的使用方法及注意事项。
1444

被折叠的 条评论
为什么被折叠?



