SQLServer数据库设计的案例分析

  • 格式:doc
  • 大小:664.00 KB
  • 文档页数:16

数据库设计的案例分析

一、教学管理

1. 基本需求

某学校设计学生教学管理系统。学生实体包括学号、姓名、性别、生日、民族、籍贯、简历、登记照,每名学生选择一个主修专业,专业包括专业编号和名称,一个专业属于一个学院,一个学院可以有若干个专业。学院信息要存储学院号、学院名、院长。教学管理还要管理课程表和学生成绩。课程表包括课程号、课程名、学分,每门课程由一个学院开设。学生选修的每门课程获得一个成绩。

设计该教学管理的ER模型,然后转化为关系模型。

若上面的管理系统还要管理教师教学安排,教师包括编号、姓名、年龄、职称,一个教师只能属于一个学院,一名教师可以上若干门课程,一门课程可以有多名老师来上,每个教师所上的每门课都有一个课堂号和课时数。试修改上题的ER模型,将教师教学信息管理增加进去。 2. 参考设计:

图一 教学管理ER图

由ER模型转换的关系模型是:

学生(学号,姓名,性别,生日,民族,籍贯,专业号,简历,登记照)

专业(专业号,专业,专业类别,学院号)

学院(学院号,学院,院长)

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

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

(题目分析:本题中有学生、专业、学院、课程四个实体。一个学生只有一个主修专业,学生与专业有多对一的联系;一个专业只由一个学院开设,一门课程只由一个学院开设,学院与专业、学院与课程都是一对多的联系;学生与课程有多对多的联系。

在转换为关系模型时,一对多的联系都在相应的多方实体的关系中增加一个外键。)

增加教师,ER图如下。

图二 有教师实体的教学管理ER图

3. 物理设计

基于Access的 数据库结构设计如下。

指定数据库文件的名称,并为设计好的关系模型设计表结构。

数据库文件保存在“E:\教学管理\”文件夹中,数据库文件名:教学管理.MDB。

表包括:学院、专业、学生、课程、成绩单。对应表结构如表1-2至表1-6所示。

表1-1

学院

字段名 类型 宽度 小数 主键/索引 参照表 约束 Null值

学院号 文本型 2 ↑(主)

学院 文本型 16

院长 文本型 8 √

表1-2 专业

字段名 类型 宽度 小数 主键/索引 参照表 约束 Null值

专业号 文本型 4 ↑(主)

专业 文本型 16

专业类别 文本型 8 ↑

学院号 文本型 2 学院

表1-3 学生

字段名 类型 宽度 小数 主键/索引 参照表 约束 Null值

学号 文本型 8 ↑(主)

姓名 文本型 8 性别 文本型 2 男 or 女

生日 日期型

民族 文本型 6 ↑

籍贯 文本型 20

专业号 文本型 6 专业 √

简历 备注型 √

登记照 OLE对象

表1-4 课程

字段名 类型 宽度 小数 主键/索引 参照表 约束 Null值

课程号 文本型 8 ↑(主)

课程名 文本型 24

学分 字节型

学院号 字符型 2 学院

表1-5 成绩单

字段名 类型 宽度 小数 主键/索引 参照表 约束 Null值

学号 文本型 8 ↑ 学生

课程号 文本型 6 ↑ 课程

成绩 单精度 4 1 >=0 and <=100 √

思考题:

1. 当我们进行物理设计时,如果将全校的学生放置在一个关系(表)中,势必带来存储空间大、处理效率低的问题。怎么解决?

2. 如果管理研究生,带来的设计影响是什么?如何解决?

3.在管理教师信息时,如果将教师分类:教师、研究生导师。研究生导师存储“研究方向、学生人数”等信息,怎样设计。附:教学管理数据库参考数据如表1-1~表1-5所示。

表1-1 学生表

学号 姓名 性别 生日 民族 籍贯 专业号 简历 登记照

唐李生 男 04/19/1987 汉 湖北省麻城 0501

黄耀 男 01/02/1989 汉 黑龙江省牡丹江市 0403

华美 女 11/09/1987 汉 河北省保定市 0403

刘权利 男 10/20/1989 回 湖北省武汉市 0403

王燕 女 08/02/1990 回 河南省安阳市 0501

郝明星 女 11/27/1989 满 辽宁省大连市 0403

高猛 男 02/03/1990 汉 湖北生黄石市 0501

多桑 男 10/26/1988 藏 西藏 0501

郭政强 男 06/10/1989 土家 湖南省吉首 0501

陆敏 女 03/18/1990 汉 广东省东莞 0501

林惠萍 女 12/04/1989 壮 广西省柳州市 0501

郑家谋 男 03/24/1988 汉 上海市 0904

罗家艳 女 05/16/1988 满 北京市 0904

史玉磊 男 09/11/1988 汉 湖北省孝感市 0904

凌晨 女 06/28/1988 汉 浙江省温州 0904

徐栋梁 男 12/20/1989 回 陕西咸阳 0403

巴朗 男 09/25/1989 蒙古 内蒙古 0403

表1-2 学院表

学院号 学院 院长

01 外国语学院 叶秋宜

02 人文学院 李容

03 金融学院 王汉生

04 法学院 乔亚

05 工商管理学院 张绪

06 会计学院 张一非

09 信息学院 杨新

表1-2 专业表

专业号 专业 专业类别 学院号

0201 新闻学 人文 02

0301 金融学 经济学 03

0302 投资学 经济学 03

0403 国际法 法学 04

0501 工商管理 管理学 05

0503 市场营销 管理学 05

0602 会计学 管理学 06

0902 信息管理 管理学 09

0904 计算机科学 工学 09

表1-4 课程表

课程号 课程名 学分 学院号

高等数学 6.0 09

数据结构 4.0 09

大学语文 3.0 01

线性代数 3.0 09

大学英语 4.0 01

美术设计 2.0 02

运筹学 5.0 09

数据库及应用 3.0 09

管理学原理 3.0 05

市场营销学 3.0 05

法学概论 3.0 04

合同法实务 2.0 04

表1-5 成绩单

学号 课程号 成绩

85

80

75

90

82

85

78

72

92

85

88

92

86

70

90

74

83

77

66

78

87

76

81

82

75

88

85

二、图书销售

建立某中小型书店图书销售管理信息系统的数据库。

1. 基本需求分析

1)组织结构

对组织结构的分析有助于分析业务范围与业务流程。书店的组织结构如图三所示。

图三 书店组织结构简图

其中,书库是保存图书的地方;购书/服务部负责采购计划、读者服务、图书预订等业务;售书部负责图书的销售。财务部负责资金管理;人事部负责员工管理与业务考核。

2)业务分析

对于信息处理系统来说,划分系统边界很重要,即哪些功能由计算机来完成,哪些工作在计算机外完成。这些要通过业务分析确定。同时,业务流程中涉及的相关数据也通过业务分析得到归类和明确。在业务分析的基础上,确定数据流图和数据字典。

本系统主要包含以下业务内容。

① 进书业务。事先采购员根据订书单采购图书。然后将图书入库,同时登记相应的图书入库数据。

本项业务涉及的数据单据和表格有:进书单(包括进书单编号、日期、金额、经手人等)和进书单细目(一个进书单可能有若干种图书。进书单的细目数据包括每种图书的信息、定价、进价或折扣,数量),以及书库账本(图书信息、库存数量、价格等)。

② 售书业务。售书员根据读者所购图书填写售书单(如图四所示)。同时,修改库存信息。

本项业务涉及和产生的数据表格有:售书单(包括售书单编号、售书日期、金额、员工)、售书细目(一个售书单可能有若干种图书。售书细目包括该次售书的书籍编号、售出数量、折扣、售出价格等),以及书库账本。

图四 售书单样式

③ 图书查询服务业务。根据读者要求,提供本书店特定的图书及库存信息。

本项业务涉及的主要数据是书库账本。

④ 综合管理业务。包括进书信息、销售信息、库存信息的查询、汇总和报表输出。

本项业务涉及所有的进书数据、销售数据和库存数据等。

3)处理的数据

上面的分析将本系统的业务归纳为4项。在业务分析的基础上,应该画出系统的数据流图。整个系统的分层数据流图将揭示一个系统内全部的数据项、数据结构、数据存储以及对数据的加工处理功能。在此基础上就可以建立系统的数据字典。本书不讨论数据流图和完整的数据字典规范等内容,仅对最后建立数据库所需要的数据进行分析说明。

在上述4项业务中涉及到的业务数据包括:进书数据、库存数据、销售数据。在这些数据中又涉及到图书数据、员工数据等,而图书数据与出版社有关,员工与部门有关。

因此,将所有数据进行归类分析,书店销售管理信息系统要处理的数据应该包括: