我知道可能看起来问题是重复的,但我会问我的情况。在我的数据库中,我有两个表用于用户,第二个表用于该用户的图像。我的问题是我应该在Images表中有标识列吗?
我知道最重要的问题(我是否应该在每张表中都有标识栏?)有很多答案,大多数答案都说(这取决于你的情况),所以我想知道我可以做什么?
答案 0 :(得分:2)
您不需要标识列。除非您有连接到images表的表(例如图像详细信息或类似的东西),或者您需要在保存在数据库中的时间之前对用户图像进行排序,否则images表上的标识列将转到没用在userId + imageSrc上使用主键和聚簇索引可以为您提供更好的搜索。请注意,无论如何您都需要一个唯一的ImageSrc,否则您可能会覆盖文件系统上的图像。
答案 1 :(得分:-1)
是的,否则您将无法从图像表中选择用户的相应图像。 (如果您选择使用2个表格,那就是这样。)
但是,如果用户只有1个与之关联的图像,则可以在用户表中包含一个包含该单个图像的src的ImageSrc列