我是MySQL的新手,我正在創建一個管理有關糖尿病患者信息的數據庫。我有6桌,這裏重要的是3桌,diabetic
桌,diabetic_profile
桌和medication_profile
桌。MySQL - 如何創建一個複合表?
最後一個表(medication_profile
)應該是一個組合表,它將有兩個主鍵。這些外鍵是diabetic_id
(diabetic
)和profile_id
(diabetic_profile
)。將它轉換成MySQL代碼對我來說是很困難的部分。我嘗試了很多方法,但還沒有實現。下面是我使用的SQL命令:
CREATE TABLE Medication_Profile (
medication_type VARCHAR(10) NOT NULL,
profile_id INT NOT NULL,
diabetic int NOT NULL,
times_a_day NUMERIC(1) NOT NULL,
dose VARCHAR(20) NOT NULL,
PRIMARY KEY (medication_type, profile_id, diabetic),
FOREIGN KEY (profile_id, diabetic)
REFERENCES Diabetic_Profile (profile_id, diabetic_id)
);
請注意,此表中的diabetic_id已經是一個外鍵存在於Diabetic_profile表。
因此,您可能提供的任何建議嗎?
在此先感謝
當我刪除糖尿病外國專欄時,代碼正常運行。所以我認爲引用存在問題,但還不能確定。 –