1
 软件工程
1.6.4.3 4.4.3 数据库设计

4.4.3 数据库设计

数据库是数据库应用程序的核心。数据库设计是建立一个应用程序最重要的步骤之一。数据库设计一般要在需求分析和数据分析的基础上进行概念设计、逻辑设计和物理设计。下面以学生学籍管理信息系统为例,描述数据库设计的详细过程。

1.概念设计

(1)通过对学校学生学籍管理需求的调查,了解到系统中的实体类型有学生、教师、院系、毕业、课程、专业等,这些实体之间的相互关系如下。

①学生与课程之间存在“选择”联系,是多对多的关系。

②学生与毕业之间存在“毕业”联系,是一对一的关系。

③教师与院系之间存在“工作”联系,是多对一的关系。

(2)每个实体的属性分别列举如下。

①学生:学号,专业号,院系号,姓名,性别,出生日期,身份证号,入学时间,政治面貌,家庭住址,籍贯,邮政编码,民族。

②教师:教工号,姓名,性别,职称,所属院系,电话。

③毕业:毕业证编号,学号,姓名,性别,身份证号,所属院系,入学时间,已修学分,需修学分。

④课程:课程号,课程名,学分。

⑤院系:院系号,院系名称,院长名。

⑥专业:专业号,学号,专业名,入学时间。

2.逻辑设计

逻辑设计的任务是根据DBMS(数据库管理系统)的特征把概念结构转换为相应的逻辑结构。概念设计所得到的E-R模型,是独立于DBMS的,这里的转换就是把表示概念结构的E-R图转换成关系模型的逻辑结构。将图4-13所示E-R图转换为规范的关系模式如下。

学生(学号,专业号,院系号,姓名,性别,出生日期,身份证号,入学时间,政治面貌,家庭住址,籍贯,邮政编码,民族)

教师(教工号,姓名,性别,职称,所属院系,电话)

毕业(毕业证编号,学号,姓名,性别,身份证号,所属院系,入学时间,已修学分,需修学分)

课程(课程号,课程名,学分)

院系(院系号,院系名称,院长名)

专业(专业号,学号,专业名,入学时间)

选修(学号,课程号,成绩)

授课(课程号,教工号,课时)

3.物理设计

物理设计的目的是根据具体DBMS的特征,确定数据库的物理结构和存储结构。关系数据库的物理设计任务包括两个方面:一是确定所有数据库文件的名称及其所含字段的名称、类型和宽度;二是确定各数据库文件需要建立的索引,在什么字段上建立索引等。部分表结构如表4-1至表4-8所列。

img43

图4-13 学生学籍管理E-R图

表4-1 教师基本信息表

img44

表4-2 学生基本信息表

img45

表4-3 专业信息表

img46

表4-4 学生毕业信息表

img47

img48

表4-5 院系信息表

img49

表4-6 课程信息表

img50

表4-7 学生选课信息表

img51

表4-8 教师授课信息表

img52