2010-09-09 133 views
1

我正在为我的社交网站项目构建数据库。我的数据库必须保存许多用户帐户的信息。每个用户都有一个配置文件,配置文件包含各种信息。账户所有者应该能够设置每个配置文件信息(私人或公共)的隐私。我想知道我应该如何跟踪每个配置文件细节的隐私选项。有一个名为Privacy的表是否是一个很好的设计,其中的列是细节,值是隐私选项?任何人都可以给我一个想法呢?谢谢社交网络数据库

+0

“project”= homework? – pascal 2010-09-09 14:56:53

+1

是的,这是我的学期任务 – Wadey 2010-09-10 01:40:35

回答

1
User(ID, Name) 
ProfileInfo(ID, Name, CanSetPrivate) 
Profile(User_ID, Profile_ID, Value, IsPrivate) 
+0

感谢您的帮助。这是我最初想到的,但是我担心会导致数据库中有很多行。我想知道这种结构在现实世界中是否常见?就像Facebook,myspace等网站一样... – Wadey 2010-09-10 02:15:50

+0

行数不是真正的问题。 1000万访问者,100个配置文件信息,这只有10亿个配置文件行。但是在'User'表中直接存储'Profile'列(例如使用XML构造)可能会更有效率,并且所有的配置文件信息都集中在一个地方。 – pascal 2010-09-10 05:46:13

+0

使用XML结构在一列中存储许多配置文件信息听起来不错。这种方法有没有任何潜在的问题? – Wadey 2010-09-10 08:49:06