创建约束更改表无效

发布于 2024-10-31 23:28:20 字数 352 浏览 1 评论 0原文

我必须修改现有的约束,以便它能够级联更新和删除。 为此,我首先删除了约束,并计划添加它(通过 ALTER TABLE),但这失败了。

当我提交下面的查询时,它给出错误“ORA-01735: invalid ALTER TABLE option”:

ALTER TABLE 
    PARAM 
ADD CONSTRAINT 
    FK_PARAM_PORTLET FOREIGN KEY (PORTLETID) 
REFERENCES PORTLET(ID) 
ON DELETE CASCADE ON UPDATE CASCADE;

知道它可能是什么吗?我是否忽略了什么?

I had to modify an existing constraint so it would cascade updates and deletes.
To do this I first removed the constraint and was planning on adding it (through an ALTER TABLE) but this fails.

When I commit the query below it gives me the error 'ORA-01735: invalid ALTER TABLE option':

ALTER TABLE 
    PARAM 
ADD CONSTRAINT 
    FK_PARAM_PORTLET FOREIGN KEY (PORTLETID) 
REFERENCES PORTLET(ID) 
ON DELETE CASCADE ON UPDATE CASCADE;

Any idea what it could be? Am I overlooking something?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

黑色毁心梦 2024-11-07 23:28:20

Oracle 不支持外键中的ON UPDATE CASCADE

查看此问题以获取提示:如何在Oracle上使用“ON UPDATE CASCADE”创建外键?

Oracle does not support ON UPDATE CASCADE in foreign keys.

Have a look at this question for tips: How to create a Foreign Key with "ON UPDATE CASCADE" on Oracle?

狼性发作 2024-11-07 23:28:20

Oracle 不支持 UPDATE CASCADE。您需要通过触发器来管理它。

查看Oracle语句

参照完整性约束可以指定要执行的特定操作
如果引用了子表中的依赖行,则执行
父键值被修改。支持的参考行动
Oracle的FOREIGN KEY完整性约束是UPDATE和DELETE NO
操作,并删除级联。

UPDATE CASCADE is not supported in Oracle. You will need to manage this via triggers.

Check Oracle statement:

Referential integrity constraints can specify particular actions to be
performed on the dependent rows in a child table if a referenced
parent key value is modified. The referential actions supported by the
FOREIGN KEY integrity constraints of Oracle are UPDATE and DELETE NO
ACTION, and DELETE CASCADE.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文