2016-11-11 38 views
1

我试图设计一个数据库,其中一个实体是User,其中一个属性是programming_languages,理论上它应该包含用户的编程语言列表知道。由于单元格只能保存单个值,因此设计这种数据库的最佳方法是什么?我应该创建一个单独的表中的每一行会持有用户的ID和他/她知道的语言之一?还是有更好的方法?设计一个具有多个属性值的数据库实体

回答

2

在外地有多个值,如果数据是静态的,在数据​​库中没有发生变化,也就是说,如果你只读领域从数据库中,事后处理它才有用。

更好的是创建一个单独的表与用户ID和语言。两者的结合将是主要关键。这是根据数据库标准化的规则。

UserID   Language 

User1   a,b,c 
User2   x,y 

正常化后

UserID   Language 

User1   a 
User1   b 
User1   c 
User2   x 
User2   y 
相关问题