概念:约束是作用于表中字段上的规则,用于限制储存在表中的数据。
目的:保证数据库中数据的正确性,有效性,完整性。
约束是作用于表中字段上的,可以在创建表/修改表的时候添加约束
若有输入不符合约束的情况,表中的主键会把这次情况列为一次数据并且加一,所以在下一个数据输入的时候,主键会加一。
外键约束
上述的两张表,在数据库层面,并未建立外键关联,所以无法保证数据的一致性和完整性
添加外键
create table(
字段名 数据类型
[constraint] [外键名称] foreign key (外键字段名) references 主表(主表列名);
)
alter table 表名
add constraint 外键名称 foreign key (外键字段名)
references 主表(主表列名);
删除外键
alter table 表名 drop foreign key 外键名称;
删除或更新行为
alter table 表名
add constraint 外键名称 foreign key (外键字段名)
references 主表(主表列名)
on update casade/set null on delete cascade/set null;
cascade:子表会随着父表的删除而删除或者外键的改动而改动
set null:若父表删除相关的外键,则子表相对应的外键则为null。