我有一个具有不同属性的实体公司。
其中一个属性是徽标,但徽标本身的特征是其他属性,如文件名和类型。
公司与徽标之间的关系是一对一的,必须有徽标。
我应该将所有内容添加为公司的属性/列,还是应该为Logo及其特征创建单独的表?
使用相同的表我避免数据库中的连接或其他查询,加上更多编码,使用单独的徽标表有什么好处?
答案 0 :(得分:3)
单独徽标表的优点是您可以扫描companies
表而无需阅读徽标信息。如果它只是少数几列,这可能不会有所不同。在某些情况下,它可以。
支持单独表格的一个论点是,其他实体是否想要专门连接到徽标而不是公司。如果是这样,单独的id将允许这样的外键关系。
我可能会质疑公司只有一个徽标的概念。首先,公司可以拥有多个拥有自己徽标的品牌,或者他们可能在不同的地理位置/语言中拥有不同的徽标。其次,徽标可能会随着时间而改变。如果你想保留一段历史,那么另一张桌子就不费吹灰之力了。