【发布时间】:2014-07-03 10:47:28
【问题描述】:
我有一个order 表,该表中的每个订单都属于device 或part(这两个字段没有特定的交集)。
所以我需要将did 或pid 作为FK 存储在order 表中。
"device"
+----+....
| id |<---------+
+----+.... :
: : : : . :
:
:
"part" :
+----+.... :
| id |<-------+ :
+----+.... : :
: : : : . : :
: :
: :
"order" @ @
+-----+-------+....
| id | for |....
+-----+-------+....
: : : : : : : : .
现在我应该怎么做?
- 将
type字段添加到order表并同时存储pid或did一列(例如for) - 创建一个中间视图
type,pid,did专栏 - 创建更高级别的表(例如
goods) 并使其 PK 在order,part,device上成为 FK
哪种方法最好?还是其他方法?
【问题讨论】:
标签: mysql sql database-design relational-database foreign-key-relationship