预订系统的数据库设计

Database design for booking system

我正在为医疗办公室创建预约应用程序,但我对如何组织我的数据库有点困惑。

这些是一些要求: - 所有者可以创建在办公室工作的医生 - 所有者可以指定每个日期每个医生的工作时间 - 客户可以预约 30 分钟或 1 小时(取决于服务)

我卡住了,我需要定义医生的可用性并将其呈现给客户。

我想要的一些表格:

Doctor
- ID
- Full Name

Customer
- ID
- Full Name

Appointment
- ID
- Doctor ID
- Customer ID
- Time??

如何解决这个问题?谢谢。

我建议创建一个新的 table 来存储医生及其工作时间。然后,在预约时,您只需检查医生是否在这些时间工作。现在,为了午休或任何其他 non-working 小时,您需要为下一个工作时间创建第二条记录。

因此,要检查他们是否在特定时间工作或了解他们的工作时间,您可以查询 table 以获取您想要的日期和医生的记录。

Doctor_Hours

  • ID
  • 医生编号
  • 日期/时间开始
  • 日期/时间结束

1 约翰 01/01/2015 06:00 01/01/2015 12:00

1 约翰 01/01/2015 13:00 01/01/2015 18:00