本文介绍了如何在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子句只能修改约束状态(即:ENABLED/DISABLED ...).

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"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-16 07:08
查看更多