You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle创建含外键表时遇ORA-00907错误,请求技术支持

ORA-00907 错误解决:创建带外键的Oracle表

ORA-00907 是缺少右括号的语法错误,你的SQL代码问题出在NAME_ID FOREIGN KEY REFERENCES TABLE_PRC4(id)这一行:

  1. 未给NAME_ID列指定数据类型
  2. 列级外键的语法不符合Oracle要求

正确写法一:列级约束(简洁版)

先定义列的数据类型,直接通过REFERENCES声明外键:

CREATE TABLE table11_prc 
(
    Family  VARCHAR2(200),
    Name    VARCHAR2(200),
    ID      INTEGER NOT NULL PRIMARY KEY,
    NAME_ID INTEGER REFERENCES TABLE_PRC4(id)
); 

正确写法二:表级约束(推荐,更易维护)

单独定义外键约束,方便后续查看或修改约束:

CREATE TABLE table11_prc 
(
    Family  VARCHAR2(200),
    Name    VARCHAR2(200),
    ID      INTEGER NOT NULL PRIMARY KEY,
    NAME_ID INTEGER,
    CONSTRAINT fk_table11_prc_table_prc4 FOREIGN KEY (NAME_ID) REFERENCES TABLE_PRC4(id)
); 

额外注意事项

  • 外键列NAME_ID的数据类型必须和被引用表TABLE_PRC4的id列完全一致(比如对方是NUMBER,这里也得用NUMBER)
  • 确保TABLE_PRC4表已存在,且id是该表的主键或唯一约束列

内容的提问来源于stack exchange,提问作者Its_faezeh0308

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 05:30:50