我们组的项目的数据库模型设计过程中,由于我们对数据库的概念还不是特别熟悉,我们基本上做中学,边学边做,终于成功的完成了数据库的设计。
我们在数据库设计的过程当中,学会了一些数据库设计最基本的知识点和相关内容。以下是我整理的一些知识点:
数据库设计是根据数据库模型组织数据。我们确定必须存储哪些数据以及数据元素如何相互关联。有了这些信息,我们可以开始将数据拟合到数据库模型。
我们得先进行需求分析并确定要存储的数据,确定数据关系
数据库设计应该遵循以下几个原则:
- 对需求的认知完全没有歧义;
- 熟练而且正确的E-R图绘制,明确改图是表明实体和关系的图,实体表示要在数据库里保存的类,关系表示类与类之间的相互关系,关系主要有一对一,一对多,多对多。经验之谈,继承关系通常可以用一对一表示,而一对多或者多对多通常表示类之间的使用关系;
- 在设计时要做到高度的抽象,对内容或者关系相类似的内容抽象为一类实体,在分类时可以抽象出一个“类”的实体,与要分类实体之间进行多对多关系映射,明确那些是必须要进行存储的实体;
- 如果系统涉及用户角色的不同不妨把,账户和身份的考虑分离开,账户的存在让他是一直存在的并且在身份变化时个人的历史和基础内容是不变的,就是身份的加持让他可以有特权或者使命,而账户是他在系统中的根;
- 对于有值内容,并且需要对值进行统计结果的需要对他进行内容的拆分,比如:问卷表和问卷内容表,问卷内容值表要拆开,才有利于统计计算,而且他们之间是一对多关系;
- 有时更加困难的是一个实体会发生多个维度的分类,那么就把他的拆分维度一一分开;
- “频道”概念在消息分发时是一个非常灵活的概念;
- 数据库可以建表来模拟消息服务器分发消息,在无法保证实时性必须存储内容时,同一消息对不同用户创建不同的副本;
总之,我们成功完成了数据库模型设计,接下来我们还有很多事情要做,我们第一次做项目,可能会遇到更多的问题,但我想我们能像数据库设计一样,不知道的地方做中学,边学边做并希望我们能早日完成我们的任务。