ON UPDATE CASCADE发出意外错误

时间:2014-07-16 17:49:34

标签: sql database db2

我有一堆alter table语句,我需要在某些列中添加on update cascade。当我运行脚本时,我得到:

An unexpected token "CASCADE" was found following "ON UPDATE".
Expected tokens may include:  "RESTRICT, NO ACTION".. SQLCODE=-104, SQLSTATE=42601, DRIVER=4.17.30" 

我的陈述都是这样的:

ALTER TABLE integ ADD FOREIGN KEY (planner) REFERENCES g_secure(planner) ON UPDATE CASCADE;

修改声明需要更改哪些内容?

1 个答案:

答案 0 :(得分:3)

看起来你正试图在DB2中使用MySQL语法,这是无效的。 DB2不支持CASCADE上的UPDATE(在this page上搜索rule-clause)。

如果你确实在使用DB2(我假设你在这里使用DB2 for Linux / Unix / Windows),那么这应该是正确的语法:

ALTER TABLE integ 
    ADD CONSTRAINT foreign_key_name
    FOREIGN KEY (planner)
        REFERENCES g_secure(planner)
        ON UPDATE RESTRICT;