用户的自定义配置文件字段

时间:2012-08-14 15:49:32

标签: php mysql pdo

我目前正在开发一个系统,允许用户为他们添加的联系人添加其他自定义字段。

我想知道添加这种能力的最佳和最有效的方法是什么?

现在我想的是每个用户有一个表(使用“主”联系人表的外键),然后为用户添加的每个自定义字段添加一列(因为我不希望有每个数据库碎片超过100-200个用户[分片很容易,因为每个用户都不会在这个系统中看到彼此的内容]),尽管我不能100%确定这是解决此类问题的正确解决方案。

3 个答案:

答案 0 :(得分:2)

也许您可以尝试使用一个单独的表来存储对用户的引用,以及字段名称和值,这样您就可以拥有大量自定义字段。

答案 1 :(得分:1)

如果您使用Boyce-Codd,则将信息分开并存储到表格中。 表示具有外键的所有用户的一个表。

答案 2 :(得分:0)

每个用户一张桌子会导致数百或更多的桌子出现重复信息。

您需要有一个名为USERS的表,用于存储用户的ID和您可能需要的固定信息。然后,您可以拥有一个CONTACT表,用于存储用户可能创建的联系人类型,以及一个匹配表USER_CONTACT,该表匹配用户唯一ID和创建的联系人ID。

通过这种方式,您可以对存储的所有信息进行高级数据挖掘,例如每个用户创建的联系人数量,创建的人数等等...