访问预约系统

时间:2012-04-02 13:41:44

标签: sql database ms-access rdms

我正在尝试制作一个Dr-patient预约系统。到目前为止,我有四张桌子: -

 Patient:-         Doctor:-           Appointment:-             Availability:-
 patientID         doctorName         time                      time
 name              room               date                      doctorName
 address                              patientID
                                      doctorName 

所有关系都是1对manys,其中许多方面都来自约会表。

患者: - 患者详细信息表

医生: - 医生详细信息表

约会: - 约会表

可用性: - 存储每位医生的时间段的表

然而这对我来说都是相对较新的东西而且我已经被抛出了。首先,在医生表中,我应该为DoctorID设置一个字段,并将其用作主键而不是医生姓名吗?即使该表中只有少数记录可能。

其次,如果我要在所有表中更改为DoctorID而不是doctorName,我是否仍然可以在需要时轻松访问doctorsName?这部分让我感到困惑,也许我只是在思考这些事情。

我问的原因是,例如说我要制作一份显示出医生ID的预约报告,我应该能够根据关系获得报告的医生姓名吗?同样基于患者ID的患者。

我猜我在表格中也有足够的信息来检查和防止约会冲突。

非常感谢,

1 个答案:

答案 0 :(得分:3)

你真的应该使用doctorsid代替doctorsName。因为如果你一起计划join这些tables,那么join上的varchars就更好了。varchar

还有一个问题,如果你仍在使用update解决方案,如果医生改名(婚姻等)会发生什么。您需要 Patient:- Doctor:- Appointment:- Availability:- patientID DoctorId AppointmentTime AvailabilityTime PatientName room AppointmentDate DoctorId address doctorName patientID DoctorId 表格和医生表格。如果你正在使用int,你只需要在一个地方(医生表)更改它

是的,当你打算出示预约报告时。你需要加入表格来获得医生的名字。

所以你的表结构应该是这样的:

{{1}}