级联删除
在相关的表中存在相匹配的外键值时,你可以删除一个主键。启用级联删除选项后,就能成功删除主键值。这时,系统会自动删除外键记录,以避免产生“孤儿”。
在下一个例子中,你必须启用级联删除选项(如图D所示)。接着,打开Publishers表并试着删除第一条记录(Apress)。系统可能显示如图F所示的一条警告消息。
图F 删除主键值时显示警告消息
最后打开Books表,查看从Publishers表删除Apress后的结果。匹配的外键(整条记录,而非仅仅是外键值)都被删除了,如图G所示。仔细观察,你会发现SQL: Access to SQL Server记录已经消失了。
图G 级联删除选项会删除匹配的外键记录
警告!
级联选项(尤其是级联删除选项)如果使用不当,可能产生破坏性的后果。为了保护数据,不要永久性地启用这两个选项。相反,只有在真正需要时,而且有十足的把握时,才暂时启用它们。用毕后则将其关闭。
结束语
关系数据库理论使许多人头痛,但只要理解了基本规则(尤其是在有了一些经验之后),就会发现它们其实很容易实现。最后,提醒你注意一个好设计的重要性。正确设计的关系数据库经得起时间和成长的考验。相反,设计欠佳的数据库很难使用和修改,甚至可能产生不正确的数据。不要随心所欲地设计,要一步一步地遵照设计过程进行操作。