05_mysql表、列的约束
Mysql的约束
1、表级约束 -- 用于整个表约束。
2、列级约束 -- 用于表中的某一列约束。
约束基本语法:
CREATE TABLE table_name(
column_name1 datatype constraint,
column_name2 datatype constraint,
.......
);
常用的约束语句有:
NOT FULL:列不接受或包含 NULL 值
UNIQUE:列不能重复相同的值,每值必须唯一
CREATE TABLE stu_tb(
id int NOT FULL,
name varchar(20) NOT FULL,
age int,
UNIQUE(id) --id值唯一性
);
PRIMARY KEY: 列上定义主键,则该列必须包含唯一值,并且不能包含空值
CREATE TABLE stu_tb(
id int NOT FULL AUTO_INCREMENT,
name varchar(20) NOT FULL,
age int,
PRIMARY KEY(id) --主键
);
FORBIGN KEY:外键约束用于将一个表中的字段或字段集合链接到另一个表的主键。具有外键的表称为子表,具有主键的表称为父表或引用表。
CHECK:限制了可插入列的值的范围
CREATE TABLE stu_tb(
id int NOT FULL,
name varchar(20) NOT FULL,
age int,
address varchar(32) DEFAULT ‘广州’,
CHECK(age >= 6 AND address = '广州') --现在年龄6岁以上 且户口为广州的,
);
DEFAULT:用于为表中的特定列分配默认值
CREATE INDEX:用于为表中的一列创建索引
AUTO_INCREMENT:当新记录插入该列时,它将自动生成一个唯一的编号,默认起始值1,之后自动递增1

浙公网安备 33010602011771号