谁能告诉我CASCADE和RESTRICT到底是什么意思?它位于受制于DDL部分的数据库系统中
如果我没有在我的ON DELETE语句中写出它们中的任何一个呢?
发布于 2013-12-17 03:40:31
ON DELETE CASCADE和ON DELETE RESTRICT是外键属性,您可以在创建两个表之间的关系时设置它们。
如果您将关系设置为ON DELETE CASCADE,则当您在“父”表上运行DELETE语句时,它将自动DELETE“子”表中的所有相应行。但是RESTRICT (这是默认的外键关系行为)是,当您尝试从“父”表中删除一行,而“子”表中有一行具有相同ID时,它将失败,并抱怨现有的子行。
无论哪种方式,您都不需要在DELETE子句中提及任何内容。
我还写了一篇博文,详细介绍了DELETE和UPDATE命令的不同规则:
发布于 2017-03-14 06:44:29
与外键关联的on delete有三种类型
发布于 2014-03-25 08:30:25
对,所以这些在DELETE和ON UPDATE中应用于父表/行。无操作和限制是一回事的原因是,如果父对象不存在,则不能与子对象和父对象建立关系。
https://stackoverflow.com/questions/20619211
复制相似问题