我在user表中有一个user_id colunm。接下来我在品牌表中有一个brand_id。每个用例都有自己的页面:用户有个人资料,品牌有品牌页面。 (注意:Thgere是这样的更多关系。公司有公司页面,城市有城市页面等)。因此,当用户上传照片时,我需要将其引用给所有者。所有者可以是品牌,用户,城市,组织等。
对于用户而言,它很简单,photo_id属于user_id,其中user_id是FK到用户表。但是要将brand_id添加为照片的所有者,我是否需要单独的colunm,或者如果我将其重命名为owner_id(用户ID或品牌ID),可以在user_id colunm中完成吗?
答案 0 :(得分:0)
2列,双手向下。 (其中一个当然必须为空)
使用单个列您会遇到许多问题:
答案 1 :(得分:0)
您可以为每个创建一个映射表,例如user_photos
和brand_photos
。
这样,您就可以从user_photos
到user
以及brand_photos
到brands
拥有完整的参照完整性。这对于过滤用户/品牌照片的查询也会对性能产生负面影响。