2017-04-21 15 views
0

これは私が現在持っている2つのテーブルです。Oracle SQLに外部キーを追加

CREATE TABLE WORK 
(
CODE varchar(255) PRIMARY KEY, 
TITLE varchar(255) 
); 

CREATE TABLE TEACHER 
(
ID varchar(255) PRIMARY KEY, 
NAME varchar(255), 
GENDER varchar(255) 
); 

そして私は、外部キーとしてTEACHERテーブルにCODEを追加しようとしています。これが私が使ってみたものです。私はこれを実行すると

ALTER TABLE TEACHER 
ADD FOREIGN KEY (CODE) 
REFERENCES WORK(CODE); 

は、しかし、それは言う:ORA-00904: "CODE":2行目

エラー無効な識別子

誰かが私がした内容を教えてもらえます間違っていて、可能な修正を提供していますか?

答えて

3

まずあなたが列を追加する必要があります。

ALTER TABLE TEACHER ADD CODE VARCHAR(255); 

はその後制約を追加:

ALTER TABLE TEACHER ADD FOREIGN KEY (CODE) REFERENCES WORK(CODE); 
0
ALTER TABLE TEACHER 
ADD FOREIGN KEY (CODE) 
REFERENCES WORK(CODE); 

何をやっているが、あなたはteacher.codeから外部キーを追加しようとしていますwork.codeに。あなたにはteacher.codeがありません。