建立子集表

时间:2014-03-13 22:48:48

标签: database database-design

我正在尝试对工作站主题进行建模,该主题代表两个与主要主题具有共同特征的从属主题。这些是:台式机和笔记本电脑

每个下属主题包含与该特定主题密切相关的特征以及将其与父主题相关联的ws_asset_no(PK)字段。

workstation

ws_asset_no
date_issued
date_returned
operating_system

desktop

ws_asset_no
monitor_asset_no

laptop

ws_asset_no
laptop_category

laptop_category是一个多值字段,将被解析为表格。

任何人都可以确认这是正确的方法并建议关系。

谢谢

1 个答案:

答案 0 :(得分:1)

您所做的是正确的,它可能最适合您的情况。请记住,笔记本电脑和台式机中的ws_asset_no必须是主键和外键。

您可以采取的替代方法是:

  • (单表继承)将所有数据放入表工作站,并添加辅助列workstation_type,告知工作站是笔记本电脑还是桌面
  • (具体表继承)有笔记本电脑和台式机(没有桌面工作站),包含笔记本电脑和台式机的所有数据。

See this question for more details on the different approaches to database inheritance