建表:
CREATE TABLE Course
( Cno Char(4) PRIMARY KEY,
Cname Char(40),
Cpno Char(4),
Ccredit Int,
FOREIGN KEY (Cpno) REFERENCES Course(Cno)
);
插入数据:
INSERT INTO Course VALUES('1','数据库','5',4);
INSERT INTO Course VALUES('2', ' 数学', '',2);
INSERT INTO Course VALUES('3', 信息系统', '1',4);
INSERT INTO Course VALUES('4', ' 操作系统', '6',3);
INSERT INTO Course VALUES('5', ' 数据结构', '7',4);
INSERT INTO Course VALUES('6', '数据处理', '',2);
INSERT INTO Course VALUES('7', ' PASCAL语言', '6',4);
报错:
cannot add or update a child row....
原因:
外键限制,无法插入,在上面的例子中就是第一个插入INSERT INTO Course VALUES('1','数据库','5',4);时先导课程5没有这个选项,因此会报错,需要调整导入的顺序就可以了,即没有先导的课程先插入,然后插入有先导并且先导课程已经插入了的。
感悟:
初学数据库,而且全自学,还很需要学习!
foreign key constraint fails错误的原因
免责声明:文章转载自《foreign key constraint fails错误的原因》仅用于学习参考。如对内容有疑问,请及时联系本站处理。
上篇如何在C#中使用全局鼠标、键盘HookArduino IDE for ESP8266教程(四)网页控制灯 简单页面下篇
宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=