我有一张带有图像的表格,需要链接到其他6个表格。假设这些表格是 - 用户,表格,食物,餐馆,类别和船舶。连接多个表格的连接表格
我应该创建6个不同的联结表,以便每个表都有它自己的联结表 - Images_Users,Images_Tables,Images_Restaurants等。
或者是更好地创建一个表与字段来区分它的链接 - Images_Entity与字段Id,Image_Id,Entity_Id,Entity_Type(我用它来区分它是一个用户表,食物或其他) 。我不喜欢这个解决方案,因为在这种情况下我将缺乏FK约束,但是我倾向于,因为项目已经有大量的表。
也许还有第三种方法?创建6个图像表?哪种解决方案是最好的性能?
编辑* 数据库将用于显示数据,插入,更新性能不是问题,只有选择语句。我发现没有图像可以链接到两个条目(这使得联结表冗余)。
让我完全改述问题 - 使用一对多关联将Table与其他6个表中的一个连接起来的最佳方式是什么?
所以Images表应该包含FK,并且可以只链接到6个表中的一个,而不是两个在同一时间。
该解决方案基于如何使用数据。您没有提供数据库如何使用的指示,因此只有很少的信息才能给出明智的答案。 – 2014-09-21 18:06:23
添加说明。 – 2014-09-21 18:34:35
一对多在哪个方向?一家餐厅可以有多张图片,或者一张图片可以属于多家餐馆? – GolezTrol 2014-09-21 18:50:53