数据库运维
记录DBA学习成长历程

MySQL基础:数据类型及列约束

文章目录

MySQL中定义数据字段的类型对数据库的优化是非常重要的MySQL支持多种数据类型,大致可分为三类:数值,字符串,时间类型

数值类型:

TINYINT类型:
范围有符号(-128,127),无符号(0,255)小整数值
此类类型只能写0-255的数值,一共256个。
INT类型:
范围有符号(-2147483648,2147483647),无符号(0,4294967295)大整数值
此类类型一样,数值不能大过于 4294967295 。

字符串类型:

char类型:
固定长度字符串,最多为255个字符(一次性分配,写一个字符也是占255个空间)
varchar类型:
可变长度字符串,最多为65535个字符(用多少分配多少空间)
enum枚举类型:
由一组固定的合法值组成的枚举,比较适合于将来此列的值是固定范围内的特点,可以使用(sh,bj,gz,ln)1234,输入数字自定匹配,但是!数字类型不使用枚举

时间类型:

DATETIME类型:
范围从1000-01-01 00:00:00.000000至9999-12-31 23:59:59.999999
TIMESTAMP类型:
1970-01-01 00:00:00.000000至2038-1-19 03:14:07.999999
此类型会受到时区影响

列约束:

primary key主键约束:设置为主键的列,此列必须非空唯一,主键在一个表中只能有一个
not null非空约束:列值不能为空,也是表设计的规范,尽可能将所有的列设为非空
unique key唯一值约束:列值不能重复
unsigned无符号约束:针对数字列,非负数
default默认约束:列中,没有录入值时,会自动使用default的值填充
auto_increment自增长:针对数字列,顺序的自动填充数据,默认是从1开始
comment注释:注释作用,让人一看就知这列是干什么的

 

赞(1)
MySQL学习笔记 » MySQL基础:数据类型及列约束