MySQL 列约束
Posted 俄罗斯方块
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 列约束相关的知识,希望对你有一定的参考价值。
mysql可以对要插入的数据进行特定的验证,只有满足条件才允许插入到数据表中,否则被认为非法的插入:
CREATE TABLE t1( 列名称 列类型 列约束 )
(1)主键约束——PRIMARY KEY
声明了主键约束的列上不允许插入重复的值,一个表中只能有一个主键,通常加在编号列,设置了主键约束就不能再使用NULL
(2)非空约束——NOT NULL
声明了非空约束的列不能插入NULL
(3)唯一约束——UNIQUE
声明了唯一约束的列不允许插入重复的值,允许插入NULL,而且允许插入多个NULL,两个NULL比较是不等的
(4)默认值约束——DEFAULT
可以使用DEFAULT关键字设置默认值,有两种方式可以应用默认值
INSERT INTO laptop_family VALUES(50,\'华为\',DEFAULT); INSERT INTO laptop_family(fid,fname) VALUES(60,\'神州\');
(5)检查约束——CHECK
检查约束可以对要插入的数据进行自定义的验证
CREATE TABLE student( score TINYINT CHECK(score>=0 AND score<=100)
);
MySQL不支持检查约束,会降低数据的插入速度
(6)外键约束——FOREIGN KEY
声明了外键约束的列上,取值必须到另一个表主键列,两者列类型要保持一致,允许插入NULL
FOREIGN KEY(列) REFERENCES 数据表(主键列)
以上是关于MySQL 列约束的主要内容,如果未能解决你的问题,请参考以下文章