1、6.4 逻辑设计阶段逻辑设计阶段 逻辑设计阶段的任务是设计数据库的逻逻辑设计阶段的任务是设计数据库的逻辑结构,辑结构,将概念结构转换为某个将概念结构转换为某个DBMS所支所支持的数据模型(例如关系模型),并对其进持的数据模型(例如关系模型),并对其进行优化。行优化。在此期间应该选择最适于描述与表达相在此期间应该选择最适于描述与表达相应概念结构的数据模型,然后选择最合适的应概念结构的数据模型,然后选择最合适的DBMS。6.4.1 逻辑模型的转换规则逻辑模型的转换规则 1 1 一个实体型转换为一个关系模式。一个实体型转换为一个关系模式。例如:以上个单元的教学管理系统的例如:以上个单元的教学管理系统
2、的E-RE-R图为基础图为基础,有如下的关系模式:,有如下的关系模式:)系()系(系别号系别号,系名,专业,系名,专业,系主任的教师号)系主任的教师号)教师()教师(教师号教师号,姓名,性别,出生日期,所在系别号,姓名,性别,出生日期,所在系别号,职称,职务),职称,职务)学生()学生(学号学号,姓名,出生日期,籍贯,性别,课程号,姓名,出生日期,籍贯,性别,课程号,系别号,专业)系别号,专业)4 4)课程()课程(课程号课程号,课程名,任课教师号),课程名,任课教师号)2 2对于实体间的联系则有以下不同的情况对于实体间的联系则有以下不同的情况(1 1)1 1:1 1联系。联系。1 1)转换为
3、一个独立的关系模式。)转换为一个独立的关系模式。例如:一个国家只有一个国旗,一个国旗只对应于例如:一个国家只有一个国旗,一个国旗只对应于一个国家,它们是一多一关系,它们的联系名是一个国家,它们是一多一关系,它们的联系名是“对应对应”关系,转换为一个独立的关系模式,有如下的关系模关系,转换为一个独立的关系模式,有如下的关系模式:式:对应(国家名,国旗名)对应(国家名,国旗名)2 2)与任意一端对应的关系模式合并。)与任意一端对应的关系模式合并。例如:比如把联系加到例如:比如把联系加到 “国旗国旗”端,有如下的关端,有如下的关系模式:系模式:国旗(国旗名,颜色,设计人,启用日期,国家名)国旗(国旗
4、名,颜色,设计人,启用日期,国家名)(2 2)一个)一个1 1:N N联系可以转换为一个独立的关系模联系可以转换为一个独立的关系模式,也可以与式,也可以与N N段对应的关系模式合并。段对应的关系模式合并。如果转换为一个独立的关系模式,则与该联如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为为关系的属性,而关系的码为N N端实体的码。端实体的码。1 1)1 1端和端和n n端分别可以转换为一个独立的关系模式端分别可以转换为一个独立的关系模式,然后与这,然后与这2 2个实体的个实体的“联系联系”相连
5、的各实体的关相连的各实体的关键字以及联系本身的属性也转换为一个关系的属键字以及联系本身的属性也转换为一个关系的属性,而此关系的关键字为性,而此关系的关键字为n n端实体的关键字。端实体的关键字。2 2)也可以与)也可以与n n端对应的关系模式合并为一个关系端对应的关系模式合并为一个关系模式。模式。(3 3)一个)一个M:NM:N联系转换为一个关系模式。与该联联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。为关系的属性,而关系的码为各实体码的组合。(4 4)三个或三个以上实体间的一个多元联
6、系可以转换为)三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。多元关系的外模式通过对这些基本的实体体码的组合。多元关系的外模式通过对这些基本的实体建立有效的视图模式得到。建立有效的视图模式得到。(5 5)实体分类的关系模式可通过在子类中加入父类(超)实体分类的关系模式可通过在子类中加入父类(超类)码。类)码。(6 6)概括类的分类通过垂直分解成几张数据库表,在概括类的分类通过垂直分解成几张数据库表
7、,在通过联结得到所需的语义实体。通过联结得到所需的语义实体。(7 7)聚集的转换:通过引入基本表进行转换。)聚集的转换:通过引入基本表进行转换。(8 8)具有相同码的关系模式可合并:形成了一般的数据)具有相同码的关系模式可合并:形成了一般的数据模型后,下一步就是向特定的模型后,下一步就是向特定的RDBMSRDBMS的模型转换。的模型转换。3 3同一实体集的实体间的联系,即自联系,也可按上述同一实体集的实体间的联系,即自联系,也可按上述1:11:1、1:n1:n和和m:nm:n三种情况分别处理。三种情况分别处理。6.4.2 模式转换示例模式转换示例 这个E-R图中有四个实体:系,学生,教师,课程
8、。(1)系和学生,1:1关系。(2)系和教师,1:N关系。(3)教师和课程,N:M关系。(4)学生和课程,N:M关系。按照前面的转换规则把按照前面的转换规则把E-RE-R图转换为数据库的关系模式如图转换为数据库的关系模式如下(下画线的是主键):下(下画线的是主键):(1 1)系()系(系别号系别号,系名,专业,系名,专业,系主任的教师号)系主任的教师号)主键:系别号主键:系别号 。(2 2)教师()教师(教师号教师号,姓名,性别,出生日期,系别号,姓名,性别,出生日期,系别号,职称,职务,讲授的课程号)职称,职务,讲授的课程号)主键:教师号主键:教师号 ,外键:系别号。外键:系别号。(3 3)
9、学生()学生(学号学号,姓名,出生日期,籍贯,性别,选修,姓名,出生日期,籍贯,性别,选修的课程号,的课程号,系别号,专业,注册时间)系别号,专业,注册时间)主键:学号主键:学号 ,外键:系别号。,外键:系别号。(4 4)课程()课程(课程号课程号,课程名,教师号),课程名,教师号)主键:课程号,外键:教师号。主键:课程号,外键:教师号。(5 5)注册()注册(系别号,学号系别号,学号,注册时间),注册时间)主键:系别号,学号。主键:系别号,学号。例子例子6.2.2数据字典示例数据字典示例下面以实例说明数据字典的应用。下面以实例说明数据字典的应用。(1 1)数据流条目:)数据流条目:例如,例如
10、,某图书管理系统,其功能包括图书的购入、借某图书管理系统,其功能包括图书的购入、借阅、归还和注销。阅、归还和注销。在此系统中,入库单、借书单、还书单、注销单等都在此系统中,入库单、借书单、还书单、注销单等都是数据流,现对是数据流,现对“借书单借书单”说明如下:说明如下:借书单借书单=读者编号读者编号+分类目录号分类目录号+借阅日期借阅日期(2 2)数据存储条目)数据存储条目在上例的图书管理系统中,在上例的图书管理系统中,“读者文件读者文件”是个数据存是个数据存储,对它说明如下:储,对它说明如下:文件名:借书单文件名:借书单组成:组成:读者编号读者编号+姓名姓名+所在部门所在部门 数据存储组织:
11、按读者编号递增顺序排列数据存储组织:按读者编号递增顺序排列存储方式:关键码存储方式:关键码(3)一些特殊联系的处理,可分为以下几情况:)一些特殊联系的处理,可分为以下几情况:当一个实体的存在是依赖于另一个实体的存当一个实体的存在是依赖于另一个实体的存在时,两个实体之间的联系便代表了两个实体在时,两个实体之间的联系便代表了两个实体间的一种所有关系。间的一种所有关系。当联系定义在同一个同型实体上时,联系当联系定义在同一个同型实体上时,联系转化为一个关系模式,与该联系相连的实体型转化为一个关系模式,与该联系相连的实体型的键以及联系的属性转换为关系模式的属性。的键以及联系的属性转换为关系模式的属性。6
12、.5 物理设计阶段物理设计阶段 数据库物理设计的内容主要有:数据库物理设计的内容主要有:(1 1).为关系模式选择存取方法为关系模式选择存取方法(建立存取路径建立存取路径);(2 2)确定数据的存储结构;)确定数据的存储结构;(3 3)建立索引;)建立索引;(4 4)设计关系、索引等数据库文件的物理存储结构;)设计关系、索引等数据库文件的物理存储结构;(5 5)确定数据存放方式)确定数据存放方式 ;(6 6)确定系统的配置;)确定系统的配置;(7 7)确保数据的安全性、完整性、一致性。)确保数据的安全性、完整性、一致性。6.6数据库设计说明书数据库设计说明书书写规范书写规范 1引言 2外部设计 3结构设计 3.1概念结构设计 3.2逻辑结构设计 3.3物理结构设计 4运用设计 再见!再见!