ORA-00905:缺少关键字ora [重复]

问题描述 投票:1回答:1

这个问题在这里已有答案:

ALTER TABLE BAND添加约束fk1_BAND_to_VENUE FOREIGN KE ORA-00905:缺少关键字

我如何解决这个问题,这个sql是用EDR图中的Q SEE应用程序创建的。我不认为SQL语法是错误的。

- 更改表以添加实现“BAND_FESTIVAL”关系所需的新约束

- 此约束确保表“BAND”的外键 - 正确引用表“FESTIVAL”的主键

ALTER TABLE BAND 
ADD CONSTRAINT fk2_BAND_to_FESTIVAL 
FOREIGN KEY(fk2_Festival_ID) REFERENCES FESTIVAL(Festival_ID) 
ON DELETE RESTRICT ON UPDATE RESTRICT;

- 更改表以添加实现“工作”关系所需的新约束

- 此约束确保表“STAFF”的外键 - 正确引用表“FESTIVAL”的主键

oracle
1个回答
1
投票

ORA-00905表明这是Oracle。 12c constraint documentation说ON DELETE的唯一有效选项是

  • 级联
  • SET NULL

根本没有ON UPDATE(因此 - 也没有选项)。

但是,这些选项对MySQL有效。

因此,@ sarthak sthapit会下定决心 - 如果您使用的是Oracle,请使用其语法;如果您使用的是MySQL,请使用其语法。它们是部分兼容的,但并不总是(如您所见)。

© www.soinside.com 2019 - 2024. All rights reserved.