0

例如,让我们想象一个“ appointments”表,它跟踪几种约会类型(眼睛、牙齿……)。这个表可以有一个ID, date, doctor_id, Appointment_type和其他所有约会类型共有的列。然后,每种类型的约会都有自己的表来保存特定于该约会类型的数据。

我选择了这种设计,因为我们有大量的数据共享给所有约会,所以我不想重复它,而且每个约会都包含非常不同类型的数据,所以只有一个有很多 NULL 字段的约会表似乎不方便。

知道我主要需要一次查询所有约会类型,组织这些表的最佳方法是什么?

4

1 回答 1

0

有两种方法:

每个层次一个表(又名单表继承)您将所有约会类型的所有属性放在一个表中,并使用“类型”字段来区分约会类型。这很快,因为没有连接。但是这个表可能有许多列。

每个子类一个表(又名多表继承) 这样您就有一个包含公共字段的基类表,并使用多态关联链接到子类表中的记录。这比较慢,需要更多的表。如果要查询所有约会类型,连接可能很难编写。

我认为对于您的应用程序(查询所有约会类型),每个层次结构一个表更好。

于 2012-11-28T15:44:42.530 回答