我正在嘗試創建一個醫生和患者之間預約的小型系統。這是我的數據庫(直到現在)。我有兩個問題: 1)當用戶登錄到應用程序時,我如何定義他是管理員,病人還是醫生? 2)主要問題...我希望醫生在登錄時設置他的月度時間表(他自由的日子和時間)以及病人登錄時尋找醫生,查看他的時間表並製作一個預約。我不能想到如何實施醫生的這個「每月時間表」。也許這將是一張桌子,像專業表一樣與醫生桌子上的外鍵相關聯?但是,我怎樣才能制定一個時間表?月度日程安排和約會的數據庫
如果您在我的數據庫中發現任何錯誤,請立即告訴我。 在此先感謝。
CREATE TABLE `user` (
`user_id` int(4) NOT NULL AUTO_INCREMENT,
`username` varchar(25) DEFAULT NULL,
`password` varchar(25) DEFAULT NULL,
`firstname` varchar(20) DEFAULT NULL,
`lastname` varchar(20) DEFAULT NULL,
PRIMARY KEY (`user_id`)
)
CREATE TABLE `admin` (
`user_id` int(4) NOT NULL,
PRIMARY KEY (`user_id`),
FOREIGN KEY (`user_id`) REFERENCES `user` (`user_id`)
)
CREATE TABLE `patient` (
`user_id` int(4) NOT NULL,
`sin` int(4) DEFAULT NULL, //social insurance number
PRIMARY KEY (`user_id`),
FOREIGN KEY (`user_id`) REFERENCES `user` (`user_id`)
)
CREATE TABLE `speciality` (
`speciality_id` int(4) NOT NULL AUTO_INCREMENT,
`speciality_name` varchar(25) DEFAULT NULL,
PRIMARY KEY (`speciality_id`)
)
CREATE TABLE `doctor` (
`user_id` int(4) NOT NULL,
`speciality_id` int(4) NOT NULL,
PRIMARY KEY(`user_id`),
FOREIGN KEY (`user_id`) REFERENCES `user` (`user_id`),
FOREIGN KEY (`speciality_id`) REFERENCES `speciality` (`speciality_id`)
)
CREATE TABLE `appointment` (
`doctor_id` int(11) NOT NULL,
`patient_id` int(11) NOT NULL,
PRIMARY KEY (`doctor_id`,`patient_id`),
FOREIGN KEY (`doctor_id`) REFERENCES `doctor` (`user_id`),
FOREIGN KEY (`patient_id`) REFERENCES `patient` (`user_id`)
)
好的謝謝,現在我明白了... ...我的第一個問題呢? :) –
@GiannisSavvidis我修改了我的答案。 –