我有兩個父表:Treatment
和Visit
。SQL。如何引用複合主鍵Oracle?
處理表:
create table Treatment (
TreatCode CHAR(6) constraint cTreatCodeNN not null,
Name VARCHAR2(20),
constraint cTreatCodePK primary key (TreatCode),
);
訪問表:
create table Visit (
SlotNum NUMBER(2),
DateVisit DATE,
ActualArrivalTime DATE,
constraint cVisitSlotDatePK primary key (SlotNum, DateVisit)
);
現在,我嘗試創建一個子表:
create table Visit_Treat (
TreatCode constraint cTreatCodeFK references Treatment(TreatCode),
SlotNum constraint cSlotNumFK references Visit(SlotNum),
DateVisit constraint cDateFK references Visit(DateVisit),
constraint cVisitTreatPK primary key (SlotNum, TreatCode, DateVisit)
);
一切執行罰款,直到3號線。從第3行開始,即SlotNum constraint ...
有一條消息:no matching unique or primary key
。已經有一個similar question,但我沒有完全得到適用於我的情況的邏輯。我逐一引用每列,並且它適用於Treatment
表父級。我應該如何更正表格父母的參考Visit
?
這可能也可能不是解決方案,因爲我們不知道什麼是對的,什麼是錯誤的代碼,它沒有解決什麼(組合)聲明應該用在什麼情況。 – philipxy