【发布时间】:2012-12-25 01:43:39
【问题描述】:
随着我继续在我的社交网站上工作(我可能永远不会完成),我决定我可能应该修改我的“更新”表。如果您将其视为 Facebook,Updates 表存储新闻源的故事,例如 User_123 更改了他的状态,或者 SomeOtherUser 添加了新照片/视频,或者 YetAnotherUser 加入了群组。
我目前的表结构如下:
更新
PK Update_ID
类型
更新_内容
FK Photo_ID
FK Video_ID
FK Owner_ID
FK Group_Wall_ID
FK Friend_Wall_ID
点赞
否决票
时间戳
请注意,Type 是指更新的类型(1 是状态更新,2 是用户加入群组,3 是新照片等),Update_Content 是状态文本,或类似消息"User_123 加入了一个群组"
现在我的方式是,当用户将更新发布到他们自己的“墙”时,Group_Wall_ID 和 Friend_Wall_ID 默认为 0。而如果该用户向群组发布更新,则 Group_Wall_ID 有一个值,而 Friend_Wall_ID 没有。
另外,如果更新只是状态更新,Photo_ID和Video_ID默认为0。但是,如果更新的是新照片,则 Photo_ID 将具有与照片表中的 PK 对应的值。
我觉得这个表的结构效率很低,可以做一些修改。任何人都可以提出任何修改以使这张表更好吗?任何反馈都会很棒!谢谢,节日快乐!
【问题讨论】:
-
是否需要为此使用关系数据库?
-
@TRENT 这不是必需的,但到目前为止我一直在使用。
标签: mysql database foreign-keys relational-database