- 通过图形界面(UI)创建外键
打开设计表,在对应的栏位填写相应的内容。其中FK_deptno是限制名
- # 先给主表建立主键
ALTER TABLE dept ADD PRIMARY KEY(deptno)
- #再给从表建立外键
ALTER TABLE emp ADD CONSTRAINT FK_deptno FOREIGN KEY(deptno) REFERENCES dept(deptno)
- # 删除外键
ALTER TABLE emp DROP FOREIGN KEY FK_deptno
外键约束导致的主从表问题:
- #从表emp建立外键(deptno)时,主表dep不能删除和更新表内容
DELETE FROM dept where deptno='40';
UPDATE dept SET deptno='90' WHERE deptno='40'
- #从表emp建立外键(deptno)时,主表dept可以添加内容
INSERT INTO dept VALUES('80','MANAGEMENT','SYNEY')
- #从表emp建立外键(deptno),从表emp可以删除内容。(例如公司员工的离职)
DELETE FROM emp WHERE deptno = '40'
- #从表emp建立外键(deptno),并且dept.deptno不存在时,不能添加或更新从表emp的内容
INSERT INTO emp values('8788','wang', 'ENGINEER','04','7781','1999-09-08', 999.99,99.9, '50')
UPDATE emp SET deptno = '50' WHERE deptno = '20'