我的数据库中有一个名为Resource
的表。这有关于资源的常见信息(资源可以是文章,静态网络链接,YouTube视频或任何其他类型)。
我的例子:
primary key - id,
column - type,
column - title,
column - description,
column - created_on,
column - updated_on
primary key - id,
column - youtube_id (spose this could be the primary key, but not relevant in the question).
column - ...
primary key - id,
column - url
column - ...
基本上resource
表包含通用(属于所有资源),列,然后表设置为保存resource_type
特定数据。在resource
和resource_type
之间创建关系的最佳(规范化)方式是什么。
我的第一直觉是它应该是resource_id
和resource_video
表中具有resource_weblink
外键的两个表之间的一对一识别关系,或者是否存在处理这种情况的更好方法是什么?
答案 0 :(得分:1)
我会使每个resource_*
表的主键对id
的{{1}}列具有外键约束。每个资源子类型不需要单独的resource
。有关如何执行此操作的示例,请参阅this thread。(在接受的答案中查看SupportSystem层次结构)。