我收到試圖創建一個表時,這個錯誤,我不知道爲什麼: [2016-07-05 14:08:02] [42000][2270] ORA-02270: no matching unique or primary key for this column-list
的Oracle SQL:接收「無匹配的唯一或主鍵」的錯誤和不知道爲什麼
這個問題看起來與similar question不同(對我來說),因爲在那個問題中,OP是用一個組合PK引用一個表,而我不是。
雖然這other question具有相同的錯誤代碼,這是因爲OP是不正確的引用主鍵,我不認爲認爲我做到了。
可能有人在SQL更有經驗教育我嗎?
(一對夫婦的注意事項:1)我知道,表/列名有微小的誤差/偏離慣例,但是這是家庭作業,老師要求我有表和行宣佈正是他方式,即使它是非常規的。 2)是的,這很愚蠢;但沒有,我不能改變,否則我得到下調)
CREATE TABLE Student_Course
(
Stu_ID NUMBER(5) NOT NULL,
Course_ID VARCHAR2(8) NOT NULL,
Section# NUMBER(3),
CONSTRAINT pk_stu_crse PRIMARY KEY (Stu_ID, Course_ID),
CONSTRAINT fk_course_id FOREIGN KEY (Course_ID) REFERENCES course(Course_ID),
CONSTRAINT fk_stu_id FOREIGN KEY (Stu_ID) REFERENCES student(Stu_ID),
CONSTRAINT fk_section FOREIGN KEY (Section#) REFERENCES course(Section#)
)
只有兩種,小的,引用的表,它們是:
CREATE TABLE student
(
Stu_ID NUMBER(5) PRIMARY KEY ,
Lname VARCHAR2(20),
Fname VARCHAR2(20),
Mi CHAR(1),
Sex CHAR(1),
Major VARCHAR2(15),
Home_State CHAR(2)
);
CREATE TABLE course
(
Course_ID VARCHAR2(8) PRIMARY KEY ,
Section# NUMBER(3),
C_Name VARCHAR2(30),
C_Description VARCHAR2(30)
);