外键约束 FOREIGN KEY

create table class
(

class_id int primary key, --班级主键
class_name varchar(20)

);

create table student
(

stu_id int primary key,
stu_name varchar(20),
age int,
class_id int, -- z要做外键的字段

--定义外键
foreign key(class_id) references class(class_id)

);

insert into class(class_id,class_name)
values(1,'高一一班'),(2,'高一2拌');

insert into student(stu_id,stu_name,age,class_id)
values(1,'张三',18,1);

--违规插入 外键报错
INSERT INTO student(stu_id,stu_name,age,class_id)
VALUES(2,'李四',18,99);

子表外键值,只能用主表已存在的主键值
主表想删一条记录,如果子表还在引用它,不让删
必须先建主表,再建从表;删表要先删从表,再删主表

posted @ 2026-05-02 01:08  菜鸟的奋斗军  阅读(6)  评论(0)    收藏  举报