无法在Oracle创建表中创建外键

时间:2013-11-21 18:40:44

标签: oracle foreign-keys

我在Oracle中构建了一些非常简单的表,而且我在创建外键时遇到了问题。 Equipment中的fac_ID是引用faculty中的fac_ID的FK,但它正在创建错误。

我正在使用Oracle 11g Express。当我跑步时,选择*来自设备"它会产生错误" ORA-00942:表或视图不存在"

CREATE TABLE Faculty(
fac_ID        VARCHAR(10)    NOT NULL,
fac_Street    VARCHAR(70)    NOT NULL,
fac_City    VARCHAR(30)    NOT NULL,
fac_PROV    VARCHAR(2)    NOT NULL,
fac_Phone    VARCHAR(12)    NOT NULL,
PRIMARY KEY (fac_ID)
); 

CREATE TABLE Equipment(
equip_ID        VARCHAR(10)    NOT NULL,
fac_ID            VARCHAR(10)    NOT NULL,
equip_Name       VARCHAR(50)    NOT NULL,
equip_Quantity    VARCHAR(3)    NOT NULL,
equip_Purchase_Date    DATE    NOT NULL,
PRIMARY KEY (equip_ID),
CONSTRAINT fac_ID FOREIGN KEY (fac_ID) REFERENCES Faculty(fac_ID) 
); 

1 个答案:

答案 0 :(得分:0)

我也遇到以下错误

  

从命令行开始出错:56 - drop table SONICLIVE.Address   purge错误报告 - SQL错误:ORA-00942:表或视图没有   存在   00942. 00000 - “表或视图不存在”   *原因:
  *操作:

我所做的就是更改将表名放在双引号“地址”

CREATE TABLE "Studio" (
  "ID" NUMBER(5) PRIMARY KEY,
  "NAME" VARCHAR(20),
  "PHONE" VARCHAR(11),
  "ADDRESS_ID" NUMBER,
  "MANAGER_ID" NUMBER,
  CONSTRAINT fk_ADDRESS FOREIGN KEY (ADDRESS_ID) REFERENCES "Address"(ID)
);

它有效。我使用Oracle llg r2 XE进行本地测试