在设计数据库时使用外键好像是一个好主意.但是你什么时候使用太多?
例如,假设我有一个主表用于存储其他程序引用以下列的机械零件信息列表:
> ID>名称>颜色>价格>测量单位>类别>等…
我应该制作包含所有可能的颜色,单位和类别列表的表,然后将它们设置为我的机器零件信息表中的相应列的外键?使用外键的好处在哪里会减轻事实上我正在制作所有这些额外的表和关系?
谢谢,
有更多的表和关系不是一件坏事.唯一的问题 – 通常不是一个 – 与维护用于执行这些关系的索引的开销有关.在您遇到性能问题之前,您应该为“应该”具有一个列的每个列创建外键关系(因为值需要根据列表进行验证).
在我愿意牺牲表演的正确性之前,表现考虑必须非常可怕.