-- 添加外键例子
CREATE TABLE teacher(
id TINYINT PRIMARY KEY auto_increment,
name VARCHAR(25),
age int,
is_marryed boolean
);
CREATE TABLE student(
id TINYINT PRIMARY KEY auto_increment,
name VARCHAR(25),
charger_id TINYINT,
FOREIGN KEY (charger_id) REFERENCES teacher(id)
); -- 建表示添加外键 外键一定要跟关联的数据类型保持一致
insert into student2(name,charger_id) values("小花",1),
("憨憨",2),
("玫玫",3),
("阿妹",4),
("小于",5),
("奶酪",3);
--添加外键和删除外键 ALTER TABLE student2 ADD CONSTRAINT abc FOREIGN KEY (charger_id) REFERENCES teacher(id) ALTER TABLE 表名student ADD CONSTRAINTS abc外键名 FOREIGN KEY(charger_id) REFERENCES teacher(id) ALTER TABLE student DROP FOREIGN KEY abc;
FOREIGN KEY (charger_id) REFERENCES teacher(id)
ON DELETE CASCADE;-- 这样如果删除 1号 冰冰 的话 那么跟着1号的学生也都被删除了
FOREIGN KEY (charger_id) REFERENCES teacher(id)
ON DELETE SET NULL; -- 这样如果删除 1号 冰冰 的话 那么跟着1号的学生对应主键都变为NUll值
原文:https://www.cnblogs.com/pyhan/p/12335649.html