1
我试图设计一个数据库,其中一个实体是User
,其中一个属性是programming_languages
,理论上它应该包含用户的编程语言列表知道。由于单元格只能保存单个值,因此设计这种数据库的最佳方法是什么?我应该创建一个单独的表中的每一行会持有用户的ID和他/她知道的语言之一?还是有更好的方法?设计一个具有多个属性值的数据库实体
我试图设计一个数据库,其中一个实体是User
,其中一个属性是programming_languages
,理论上它应该包含用户的编程语言列表知道。由于单元格只能保存单个值,因此设计这种数据库的最佳方法是什么?我应该创建一个单独的表中的每一行会持有用户的ID和他/她知道的语言之一?还是有更好的方法?设计一个具有多个属性值的数据库实体
在外地有多个值,如果数据是静态的,在数据库中没有发生变化,也就是说,如果你只读领域从数据库中,事后处理它才有用。
更好的是创建一个单独的表与用户ID和语言。两者的结合将是主要关键。这是根据数据库标准化的规则。
UserID Language
User1 a,b,c
User2 x,y
正常化后
UserID Language
User1 a
User1 b
User1 c
User2 x
User2 y