MySQL 数据类型约束有哪些?

大哥大姐们,请分析下,MySQL 数据类型约束有哪些?
最新回答
怠慢

2024-11-08 03:01:00

MySQL 数据类型约束主要包括以下几种:

1、非空约束

限制数据库中某个值是否可以为空,null字段值可以为空,not null字段值不能为空。注意:如果约束不生效可以先设置一下sql_mode。

2、唯一约束

字段添加唯一约束之后,该字段的值不能重复,也就是说在一列当中不能出现一样的值,已经添加的值不能再重复的插入。

3、主键约束

主键保证记录的唯一性,主键自动为NOT NULL。每张数据表只能存在一个主键,NOT NULL + UNIQUE KEY 或一个UNIQUE KEY + NOT NULL,一个NOT NULL的时候,那么它被当做PRIMARY KEY主键。当一张表里没有一个主键的时候,第一个出现的非空且为唯一的列被视为有主键。

4、自增长

自增长 AUTO_INCREMENT 自动编号,且必须与主键组合使用,默认情况下,起始值为1,每次的增量为1。当插入记录时,如果为AUTO_INCREMENT数据列明确指定了一个数值,则会出现两种情况:如果插入的值与已有的编号重复,则会出现出错信息,因为AUTO_INCREMENT数据列的值必须是唯一的;如果插入的值大于已编号的值,则会把该插入到数据列中,并使在下一个编号将从这个新值开始递增。也就是说,可以跳过一些编号。如果自增序列的最大值被删除了,则在插入新记录时,该值被重用。

5、默认约束

添加/删除默认约束,设置默认值,插入值。

6、外键约束

外键约束要求数据表的存储引擎只能为 InnoDB。查看当前mysql服务器支持的存储引擎,编辑数据表的默认存储引擎。