首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据库方案设计社交网站

数据库方案设计社交网站
EN

Stack Overflow用户
提问于 2010-03-22 10:41:12
回答 4查看 9.2K关注 0票数 1

嗨,我计划设计一个社交网站(如奥尔库特) asp.net mvc.我卡在数据库design.Anyone提供我的资源。

EN

回答 4

Stack Overflow用户

发布于 2010-03-22 10:50:19

这些是进行初始数据库设计时应该遵循的步骤。

首先,列出你想要存储的所有“对象”,比如用户、帖子、关系等等。

其次,找出你想要存储的信息(用户名、密码、全名、地址等)。

然后按照第三种范式设计数据库表。

  1. 表中的每一列都应该是键的属性。
  2. 表中的每一列都应该是整个键的属性。
  3. 表中的每一列都应该是键的属性。

数据库设计应该始终以第三范式完成,如果存在性能问题,并且您了解回归的后果,则应还原为其他形态。通常,通过正确应用计算字段或触发器,您可以安全(且高效)地执行此操作。

例如,您不应该做的一件事是尝试在users表中对关系进行建模。该表中的一行将以用户名作为关键字,并且关系依赖于两个用户名,因此这将违反规则3。

票数 5
EN

Stack Overflow用户

发布于 2010-03-22 10:50:57

Barry Williams拥有一个免费的数据模型库,他将其作为各种应用程序的起点。他的作品集包括一个社交网站的建议模型;该页面还包括一些支持信息的链接。Find out more.

票数 3
EN

Stack Overflow用户

发布于 2010-03-22 10:45:17

您可以计算出字段/查询和其他所有内容,但基本表非常简单:

  • 用户表

存储用户的登录/密码/访问Information

  • User信息表

存储用户可能输入的任何其他数据(全名、生日、etc)

  • Relationship表

存储用户A和用户B之间的关系

  • 帖子表

根据您的用户将发布的媒体类型,这将显示所有发布的消息的列表,并附加的用户ID

这就是它的基础,这种布局可能足以模仿Twitter (这是一个非常简单的网站)。

任何额外的东西,你可能应该用你的brain来弄清楚。这真的不是那么难。Facebook并不是因为创建了一个好的数据库模式而流行起来的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2489739

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档