根据用户的信息需求、数据库操作需求,设计一个结构合理、使用方便、效率高的数据库。
(1)新奥尔良方法
该设计方法认为数据库设计应分六个阶段进行,者六个阶段分别是需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施以及数据库运行和维护。
(2)基于E-R模型的数据库设计方法
(3)基于3NF的设计方法
(4)对象定义语言方法
这里联系又分为三种:一对一、一对多、多对多,下面用实际案例进行画图举例:
(1)一对一
一个单位的总负责人只有一个,一个人也只能当一个单位的总负责人,这时候单位和总负责人的关系是一对一的,如图:

(2)一对多
一个部门有多个员工,一个员工只能属于一个部门,此时部门和员工的关系属于一对多,如图:

(3)多对多
一个项目有多个员工,一个员工可以同时进行多个项目,此时员工和项目的关系就是多对多的,如图:

这里在属性上有三点需要注意:
对于后两点,这里进行举例,
错误示范:

正确写法:
这里专业中应还有其他属性,这里图中没有体现,但要注意。
将局部E-R图合成,则为全局E-R图,但再合成的时候可能会产生冲突,这其中主要冲突有三种:
(1)属性冲突。包括域冲突和属性取值冲突;
(2)命名冲突。有同名异义冲突和异名同义冲突;
(3)结构冲突。结构冲突又有三种情况:
强实体集(Strong Entity Set)是指具有自己唯一标识符的实体集。这意味着强实体集中的每个实体都可以被唯一地识别和区别于其他实体。
弱实体集(Weak Entity Set)则不具备自己的唯一标识符。它依赖于与其相关的强实体集来确定其唯一性。弱实体集的存在必须与其依赖的强实体集相关联。
简单来说,就是强实体集可以单独存在,而弱实体集必须靠强实体集才能存在,如专业和专业课,此时专业就是强实体集,专业课就是弱实体集,没有专业就没有专业课。对于弱实体集,必须满足以下限制:
依赖有两种约束情况:
简单的说就是关系之间的继承,E-R模型使用实体集的继承和ISA联系来描述实体集特殊化和泛化的概念。如图,描述了学生集的层次关系:
