从其中一个表中删除记录时如何保持两个表的数据一致?

时间:2013-02-17 21:17:40

标签: mysql database database-design foreign-keys

说,我有两个表:studentscourse_scores

students中的属性为student_id, name, sex;

course_scores中的属性为student_id, course, score

当我从students删除记录时,course_scores中的相应记录也应删除,对吧?使它们保持一致。

你能告诉我这样做的代码吗?

1 个答案:

答案 0 :(得分:1)

ALTER TABLE course_scores ADD FOREIGN KEY (student_id) REFERENCES
    students (student_id) ON DELETE CASCADE

ON DELETE CASCADE部分是你想要的;如果删除了相应的course_scores,这将删除student_id中的所有行。您的表格必须使用InnoDB引擎。