【问题标题】:ORA-00905: missing keyword ora [duplicate]ORA-00905: 缺少关键字 ora [重复]
【发布时间】:2017-12-27 15:06:48
【问题描述】:

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

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

-- 更改表以添加实现“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】:

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

  • 级联
  • 设置为空

根本没有 ON UPDATE(所以 - 也没有选项)。

不过,这些选项对MySQL 有效。

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

【讨论】:

    猜你喜欢
    • 2012-07-26
    • 1970-01-01
    • 1970-01-01
    • 2023-01-02
    • 2019-01-18
    • 2018-06-18
    • 2016-03-12
    • 1970-01-01
    相关资源
    最近更新 更多