MYSQL简单的数据建模

时间:2016-03-01 21:23:00

标签: mysql sql data-modeling

教师可以携带多个校园设备,这些设备专门分配给一个人。

这个数据模型中的实体会是什么样子,它们的关系是什么?

干杯

3 个答案:

答案 0 :(得分:1)

教师(1)和设备(n)之间存在一对多(1:n)的关系。

所以,我想象一下将需要一个Faculty表和一个Equipment表。每个主键都是某种唯一ID(自动生成,如AUTO_INCREMENT,或明确给出)。

由于1:n关系是Faculty:Equipment,因此您可以在设备中引用Faculty.id(" id"作为主键的组成列名称)表

因此,这两个表之间的参照关系 /桥/匹配将是Faculty.id和Equipment.faculty_id(" faculty_id"是一个虚构的列名,表示相应的Faculty表的主键):

Faculty.id = Equipment.faculty_id

答案 1 :(得分:0)

这是一种经典的1:n关系。为教职员工准备一张桌子,说members,身份证号为PK和 另一张assets的表格。资产还有一个ID(与此无关)和一个FK,比如assigned_to 它指的是members表的PK。

答案 2 :(得分:0)

如果您想知道谁会随着时间的推移检查出哪些设备,那么您的设计必须更加复杂。您需要在它们之间使用某种设备检查表,以便检查设备的历史记录并重新检入。当教师检查设备时,创建设备检查记录,并指向教师和设备和DateOut。然后,将设备记录链接到EquipmentCheckout记录。只要CheckoutId字段不为null,其他任何人都无法检查该设备。返回设备时,使用DateIn编辑EquipmentCheckout记录,并将该设备的CheckoutId设置为null。然后,您将了解谁检查了什么。

Entities