如果删除了父外键,则将子表中的外键列设置为空

时间:2015-04-30 03:23:58

标签: mysql database sqlite foreign-keys foreign-key-relationship

我有一个SQLite数据库。

我已经学会了如何插入外键,现在我想这样做: 1.删​​除父表中包含外键的行 2.将任何其他引用该外键的表设置为null。

我已经阅读了有关级联删除的内容,但这似乎删除了具有该外键的任何行。相反,我想在任何具有引用外键的列值的表中使null为空。

您能告诉我该怎么做才能做到这一点,也许这个术语是什么?

2 个答案:

答案 0 :(得分:3)

对于MySQL,听起来好像要声明外键约束

ON DELETE SET NULL

参考:http://dev.mysql.com/doc/refman/5.6/en/innodb-foreign-key-constraints.html

我对sqllite并不熟悉,但在......

中提及ON DELETE SET NULL

参考:https://www.sqlite.org/foreignkeys.html#fk_actions

答案 1 :(得分:1)

ON DELETE SET NULL

在创建外键约束

的位置添加此项