携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第4天
参照完整性
一 外键约束
1、鼠标步骤
①展开“数据库”节点,展开“表”节点。
②右击表,选择“设计”。
③右击某“字段”,选择“关系”。
④单击“添加”按钮,在“标识”里可以起名字。
⑤在“表和列规范”,单击“
”按钮,设置外键。
⑥设置关系名、主表、从表,主键、外键,然后“确定”按钮。
⑦最后“关闭”按钮,保存。
2、SQL语句
①建立表时
CREATE TABLE 表名
(
<列名1> <数据类型> [CONSTRAINT <外键约束名>] [FOREIGN KEY] REFERENCES <父表名> [(<主键>)]
)
例题: 建立“成绩1”表,为“学号”字段设置外键(前提:“学生1”表的学号已经设为主键)。
USE 学生管理
GO
CREATE TABLE 成绩1
(
学号 char(8) NOT NULL REFERENCES 学生1 (学号) ,
课程号 varchar(3) NOT NULL,
成绩 int
)
GO
看图见区别主键与外键:
②修改表时
ALTER TABLE 从表名
ADD CONTRAINT 约束名
FOREIGN KEY {(字段名[,…n])}
REFERENCES 主表 [(字段名[,…n])]
例题: 修改“成绩1”表 的“学号”字段为外键(前提:“学生1”表的学号已经设为主键)。
USE 学生管理
GO
ALTER TABLE 成绩1
ADD CONSTRAINT fk_学号
FOREIGN KEY (学号) REFERENCES 学生1 (学号)
参照完整性作用表现在三个方面:
1、禁止在从表相关字段中插入主表中不存在的关键字的数据行。
2、禁止会导致从表中相应值孤立的主表中的外键值改变。
3、禁止删除在从表中有对应记录的主表记录。