如何在ALTER TABLE语句中添加'ON DELETE CASCADE'?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (197)

我在表中有一个外键约束,我想添加ON DELETE CASCADE到它。

我试过这个:

alter table child_table_name
  修改约束fk_name
  外键(child_column_name)
  在删除级联上引用parent_table_name(parent_column_name);

不起作用。

提问于
用户回答回答于

你不能添加ON DELETE CASCADE到已经存在的约束。你将不得不drop重新create约束。该文档显示该MODIFY CONSTRAINT子句只能修改约束状态(即:ENABLED/DISABLED)。

用户回答回答于

首先drop你的外键,并尝试你的上述命令,add constraint而不是modify constraint。现在这是命令:

ALTER TABLE child_table_name 
  ADD CONSTRAINT fk_name 
  FOREIGN KEY (child_column_name) 
  REFERENCES parent_table_name(parent_column_name) 
  ON DELETE CASCADE;

所属标签

可能回答问题的人

  • 西风

    renzha.net · 站长 (已认证)

    9 粉丝1 提问5 回答
  • uncle_light

    5 粉丝518 提问3 回答
  • 学生

    2 粉丝477 提问3 回答
  • 军哥

    重庆雷驰信息技术有限公司 · 经理 (已认证)

    5 粉丝1 提问3 回答

扫码关注云+社区

领取腾讯云代金券