有外键的情况应该先添加主表数据,再添加副表数据。
如:有以下两张表
班级表:
CLASSID NAME
1 一班
2 二班
学生表:
SID NAME CLASSID
1 张三 1
2 李四 1
3 王五 2
其中学生表中的CLASSID是班级表CLASSID的外键。
现在要求在学生表中添加一条SID=4,NAME=赵六,CLASSID=3的数据,那么只能先在班级表中加入一条新数据。
insert into 班级表 values (3,'三班');
然后再在学生表中添加:
insert into 学生表 values (4,'赵六',3);
两个办法
1、先主表插入数据,再从表插入数据集
2、先禁用外键约束
ALTER TABLE 表名
NOCHECK CONSTRAINT
外键约束名
然后插入数据
然后再启用约束
ALTER TABLE 表名
CHECK CONSTRAINT
外键约束名