如何在ALTER TABLE语句中添加"ON DELETE CASCADE" [英] How to add 'ON DELETE CASCADE' in ALTER TABLE statement

查看:151
本文介绍了如何在ALTER TABLE语句中添加"ON DELETE CASCADE"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的表中有一个外键约束,我想向其添加ON DELETE CASCADE.

I have a foreign key constraint in my table, I want to add ON DELETE CASCADE to it.

我已经尝试过了:


alter table child_table_name
  modify constraint fk_name
  foreign key (child_column_name)
  references parent_table_name (parent_column_name) on delete cascade;

不起作用.


外键已经存在,外键列中有数据.


Foreign key already exists, there are data in foreign key column.

执行该语句后收到的错误消息:

The error message I get after executing the statement:


ORA-02275: such a referential constraint already exists in the table

推荐答案

您不能将ON DELETE CASCADE添加到已经存在的约束中.您将必须drop并重新create约束. 文档显示MODIFY CONSTRAINT子句只能修改

You can not add ON DELETE CASCADE to an already existing constraint. You will have to drop and re-create the constraint. The documentation shows that the MODIFY CONSTRAINT clause can only modify the state of a constraint (i-e: ENABLED/DISABLED...).

这篇关于如何在ALTER TABLE语句中添加"ON DELETE CASCADE"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆