朋友的我创建了一个具有三列的复合主键的表,然后我创建了子表,其中只有两个列,这将导致错误。请帮助我参考只有两列基表。引用复合主键
CREATE TABLE STUDENT
(SID NUMBER
, NAME VARCHAR2(20)
, DEPT VARCHAR2(20)
, CARD_F NUMBER
, CARD_S NUMBER
, PRIMARY KEY (SID, CARD_F, CARD_S)
);
CREATE TABLE MASTER
(BOOKNO NUMBER
, CARD_S NUMBER
, FOREIGN KEY (BOOKNO)
REFERENCES STUDENT(CARD_F)
);
你为什么不定义'SID'作为主键?如果'CARD_F'和'CARD_S'唯一标识一个学生,把它们作为唯一的密钥? –