数据库课程设计说明书.docx

上传人:b****6 文档编号:8123477 上传时间:2023-01-28 格式:DOCX 页数:22 大小:240.96KB
下载 相关 举报
数据库课程设计说明书.docx_第1页
第1页 / 共22页
数据库课程设计说明书.docx_第2页
第2页 / 共22页
数据库课程设计说明书.docx_第3页
第3页 / 共22页
数据库课程设计说明书.docx_第4页
第4页 / 共22页
数据库课程设计说明书.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

数据库课程设计说明书.docx

《数据库课程设计说明书.docx》由会员分享,可在线阅读,更多相关《数据库课程设计说明书.docx(22页珍藏版)》请在冰豆网上搜索。

数据库课程设计说明书.docx

数据库课程设计说明书

摘要

为了更好的巩固和加强书本所学的知识,把所学的东西转化为实际应用。

我们学习了IBMDB2应用程序的使用。

并应用了SQL语言。

对数据库的创建、修改、删除方法有了一定的了解。

通过导入表和删除表、更改表学会了对于表的一些操作。

为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。

当人们收集了大量的数据后,应该把它们保存起来进入近一步的处理,进一步的抽取有用的信息。

当年人们把数据存放在文件柜中,可现在随着社会的发展,数据量急剧增长,现在人们就借助计算机和数据库技术科学的保存大量的数据,以便能更好的利用这些数据资源。

通过图书馆管理系统的构造以及借书人的信息还有书的相关信息制成表格,输入到数据库中,使之能够进行查询、修改、删除并且与机票预定系统执行相同的操作。

需求分析阶段就是要研究我所作的机票预定系统的具体分类和实施过程流图。

概念设计阶段要完成数据抽象与局部视图设计还有视图的集成。

逻辑结构设计阶段要把E-R图转化为关系模式并且把我输入的五张表结合在一起完成一个总关系表。

最后就是要运行和实施数据库。

要把查询结果与过程抓几张图

 

关键词:

SQL语言;IBMDB2;数据库设计;机票预定系统

目录

第一章绪论1

1.1课题简介1

1.2设计目的1

1.3设计内容1

1.4系统实验要求1

第二章需求分析3

2.1需求分析的任务3

2.2需求分析的过程3

2.3数据字典与流程图3

2.4系统框架5

第三章概念结构设计8

3.1概念结构设计的方法与步骤8

3.1.1概念结构设计的方法8

3.1.3概念结构设计的步骤8

3.2数据抽象与局部视图设计8

3.3视图的集成9

第四章逻辑结构设计10

4.1E-R图向关系模型的转换10

4.2数据模型的优化10

4.3数据库的结构11

第五章数据库物理设计14

5.1索引的建立14

5.2表空间的建立14

第六章数据库的实施15

6.1表的建立与数据的载入15

6.2触发器的设计15

6.3数据库的运行15

6.4数据库的查询18

总结20

参考文献21

第一章绪论

1.1课题简介

随着时代的发展,计算系软件和系统的成熟,机票如果简单方面预定成为一个影响多数人生活的问题。

而建立机票预定系统是一个很好的解决办法。

经过三年的学习,我们对计算机方面的知识有了很大的提升,本着理论联系实际的宗旨,通过学校提供的这次课程设计实践的机会,在指导教师的帮助下,历经两周时间,我自行设计一套机票预定管理系统,在下面的各章中,我将以这套机票预定系统信息系统为例,谈谈其开发过程和所涉及到的问题。

1.2设计目的

应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。

实践和巩固在课堂教学中学习的关于DB2的有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。

实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。

1.3设计内容

选择课题并且对课题的相关信息有一定的了解,对于我选的课题来说,我必须了解图书馆管理系统的构造以及借书人的信息还有书的相关信息。

通过这些信息制成表格,输入到数据库中,使之能够进行查询、修改、删除并且与机票预定系统执行相同的操作。

需求分析阶段就是要研究我所作的图书馆管理系统的具体分类和实施过程流图。

概念设计阶段要完成数据抽象与局部视图设计还有视图的集成。

逻辑结构设计阶段要把E-R图转化为关系模式并且把我输入的五张表结合在一起完成一个总关系表。

最后就是要运行和实施数据库。

要把查询结果与过程抓几张图。

第二章需求分析

2.1需求分析的任务

调查图书馆管理系统应用领域涉及的内容,对涉及到领域的各个应用的信息要求和操作要求进行详细分析,形成需求分析说明书。

最重要的是调查、收集信息、分析借书人信息和借书流程。

处理要求、数据的安全性与完整性要求。

要求系统能有效、快速、安全、可靠和无误的完成上述操作。

并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。

2.2需求分析的过程

图书馆为方便管理,需开发一个图书馆管理系统。

为便于图书馆管理员的管理,管理员负责借书并且将借书人的信息,包括姓名、性别、工作单位、身份证号码、借书的书号,借书日期,输入图书馆管理系统的客户端程序,系统经过查询图书馆的数据服务器后,为借书者提供服务。

并规定什么时间还书超过时间要罚款,还要规定一次只能借几本。

要求系统能有效、快速、安全、可靠和无误的完成上述操作。

并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。

2.3数据字典与流程图

1.业务流程分析

经过可行性分析和初步需求调查,抽象出该系统业务流程图,结合该实例具体情况,给出借书者信息、借书信息需求。

图2.1图书馆管理系统流程图

⑴调查用户需求

①图书馆办公需求

●功能:

借书者持借书证去图书馆借书。

●统计功能:

◆按书号统计数的本书数

◆按姓名(身份证号),书名(书号),统计借书书数

②借书需求

●借还书功能:

◆借书

◆还书

③查询需求

●查询功能:

◆查询借书者所借的书是否被借走

◆查询书的位置

●统计功能:

◆统计书借出多少本

◆统计书还剩多少本

●查询功能:

④书的信息需求

●查询功能:

◆书名

◆作者

◆著书时间

2.系统模块分析

在调查完了用户需求之后,就要开始分析用户需求。

在此,我们采用自顶向下的结构化分析方法(SA方法)。

首先,定义全局概念结构的框架,如图2.2所示。

图2.2图书馆管理系统总框架图

各子系统需要进一步细化。

图书信息系统为例进一步细化,如图2.3所示。

图2.3图书信息系统细化

以其中的借书者信息功能为例进一步细化,如图2.4所示。

图2.4借书者信息系统细化

图2.5借书信息系统细化

图2.7书架信息系统

3.数据字典

将所有子系统全部细化。

将所有用户需求分析完毕之后,就要开始构造数据字典了。

经分析之后,本系统要用到五个基本表:

图书信息表,借书者信息表,借书信息表,书架信息表,书位置信息表。

数据结构定义如表2.1所示。

表2.1数据结构定义

数据结构名

含义说明

组成

图书信息表

定义了图书的有关信息

书名,书号,作者,著书时间,剩于多少本

借书者信息

定义了借书者有关信息

借书者姓名,身份证号,性别,

工作单位,电话号

借书信息表

定义了借书

的有关信息

书号,借书者的身份证号,借书日期

书架位置

定义了书架相关有关信息

书架编号,书架位置,所存书的类型

书位置位息表

定义了书座位有关信息

书号,书架编号,

第三章概念结构设计

3.1概念结构设计的方法与步骤

3.1.1概念结构设计的方法

概念设计阶段我采用自底向上的方法,即自顶向下的进行需求分析,然后再自底向上的进行概念结构设计。

对已经细化到无法再分的阶段逐步集成在一起,最终合成一个全局概念模式。

3.1.2概念结构设计的步骤

第一步是进行局部视图的设计:

由于高层的数据流图只能反映系统的概貌,而中层流图能较好的反映系统中各局部应用的子系统组成。

因此我们先逐一的设计分E-R图。

第二步是进行视图的集成:

各子系统的E-R图设计好之后,下一步就是要将所有的分E-R图合成一个系统的总E-R图,一般有两个方式,多个分E-R图一次集成,另一种是一次集成两个分E-R图。

我想采用一次集成两个分E-R图的方式。

3.2数据抽象与局部视图设计

按照图2.2机票预定系统总框架图,设计实体属性图以及局部E-R图。

图3.1图书实体属性图

图3.2借书者实体属性图

图3.3书架位置实体属性图

图3.3借书关系E-R图

图3.4书的位置关系E-R图

3.3视图的集成

经过逐步细化再进行每两个一集成初步形成一个E-R图,最后得到图3.4总体概念结构E-R图。

图3.4系统总体结构E-R图

第四章逻辑结构设计

4.1E-R图向关系模型的转换

将图3.4总体概念结构E-R图转化成关系模型。

图书信息表(书号,书名,作者,著书时间,剩于多少本)

借书者信息表(身份证号,姓名,电话号,性别,工作单位)

书架位置信息表(书架编号,位置,所存书类型)

借书信息表(身份证号,书号,借书日期)

图书位置信息表(书号,书架编号)

4.2数据模型的优化

将转化的关系模式进行优化,最终达到第三范式。

1、确定数据依赖

图书信息(书号,书名,作者,著书时间,剩余多少本)根据这个关系写出数据依赖

书号→书名,书号→作者,书号→著书时间,书号→剩余多少本

借书者信息(姓名,身份证号,电话号,性别,工作单位)

身份证号→姓名,身份证号→电话号,身份证号→性别,身份证号→工作单位

书架位置信息(书架编号,位置,所存书类型)

书架号→位置,书架号→所存书类型

借书信息(身份证号,书号,借书日期)

(身份证号,书号)→借书日期

图书位置信息(书号,书架编号)

对各关系模式间数据依赖进行极小化处理,消除冗余

书号→书名,书号→作者,书号→著书时间,书号→剩余多少本

身份证号→姓名,身份证号→电话号,身份证号→性别,身份证号→工作单位

书架号→位置,书架号→所存书类型

(身份证号,书号)→借书日期

4.3数据库的结构

给出图书馆管理系统基本表结构图。

bnumber

bname

author

bdate

lnamber

char(6)

pk

varchar(15)

varchar(15)

date

smallint

 

id

pname

tnamuber

sex

adress

char(6)

pk

varchar(15)

varchar(15)

char

(1)

varchar(15)

padress

pnumber

blixing

char(6)

char(6)

pk

varchar(15)

bnumber

id

jdate

char(6)

fk

pk

fk

char(6)

date

bnumber

pnumber

char(6)

fk

pk

fk

char(6)

图4.1各表的结构

根据总体结构图设计各表的结构,其相应标的定义如下:

 

表4-1图书信息系统的结构

字段名

数据类型

长度

约束

描述

bnumber

char

6

主键

书号

bname

varchar

15

不为空

书名

author

varchar

15

不为空

作者

bdate

date

不为空

著书时间

lnamber

smallint

不为空

剩余多少本

表4-2借书者信息系统的结构

字段名

数据类型

长度

约束

描述

id

char

6

主键

身份证号

pname

varchar

15

不为空

借书者姓名

tnamuber

varchar

15

不为空

电话号

sex

char

1

不为空

性别

adress

Varchar

15

不为空

工作单位

表4-3书架信息表系统的结构

字段名

数据类型

长度

约束

描述

pnumbe

char

6

主键

书架编号

padress

char

6

不为空

位置

bleixing

varchar

15

不为空

所存书的类型

表4.4借书信息系统的结构

字段名

数据类型

长度

约束

描述

bnumber

char

6

主键

书号

id

char

6

主键

身份证号

jdate

date

不为空

借书日期

表4.5图书位置信息表

字段名

数据类型

长度

约束

描述

bnumber

char

6

主键

书号

pnumber

char

6

主键

书架号

第五章数据库物理设计

5.1索引的建立

先给出索引的相关定义,然后自己选择表或者属性建立索引(唯一索引、聚簇索引),要求表和索引存储在不同的表空间里,写出相关的SQL语句。

唯一索引

CONNECTTOLGY19;

CREATEINDEXADMINISTRATOR.UNIQULONADMINISTRATOR.SHUJIA(PADRESSASC)PCTFREE10MINPCTUSED10ALLOWREVERSESCANSPAGESPLITSYMMETRICCOLLECTSAMPLEDDETAILEDSTATISTICS

CONNECTRESET;

CONNECTTOLGY19;

CREATEINDEXADMINISTRATOR.JIUCUONADMINISTRATOR.BOOKSTAYIN(PNUMBERASC)PCTFREE10MINPCTUSED10ALLOWREVERSESCANSPAGESPLITSYMMETRICCOLLECTSAMPLEDDETAILEDSTATISTICS;

CONNECTRESET;

5.2表空间的建立

给出表空间的相关定义,然后建立需要用到的表空间(至少2个以上,存放在目录容器和文件容器中),写出相关的SQL语句

1.文件容器

CONNECTTOLGY19;

CREATEREGULARTABLESPACEDMS01PAGESIZE4KMANAGEDBYDATABASEUSING(FILE'c:

\dms\dms01'5120)EXTENTSIZE16OVERHEAD12.67PREFETCHSIZE16TRANSFERRATE0.18BUFFERPOOLIBMDEFAULTBPDROPPEDTABLERECOVERYON;CONNECTRESET;CONNECTRESET;

CONNECTTOLGY19;

CREATEREGULARTABLESPACEDMS02PAGESIZE4KMANAGEDBYDATABASEUSING(FILE'c:

\dms\dms02'5120)EXTENTSIZE16OVERHEAD12.67PREFETCHSIZE16TRANSFERRATE0.18BUFFERPOOLIBMDEFAULTBPDROPPEDTABLERECOVERYON;CONNECTRESET;

2.目录容器

CONNECTTOLGY19;

CREATEREGULARTABLESPACESMS03PAGESIZE4KMANAGEDBYSYSTEMUSING('C:

\sms\smso1')EXTENTSIZE16OVERHEAD10.5PREFETCHSIZE16TRANSFERRATE0.14BUFFERPOOLIBMDEFAULTBPDROPPEDTABLERECOVERYON;CONNECTRESET;

第六章数据库的实施

6.1系统实验要求

建立三个用户:

user1,user2,user3

(1)使第一个用户user1和db2admin一起成为admin组的成员,使admin具有SYSADM的权限。

(2)使第二个用户user2拥有DBADM的权限。

(3)将创建的表之一上的所有特权授予给自己建立的用户user3。

6.2表的建立与数据的载入

此处给出建立表和视图的SQL语句!

1.CONNECTTOLGY19;

CREATETABLEADMINISTRATOR.BOOK(BNUMBERCHARACTER(6)NOTNULLBNAMEVARCHAR(15)NOTNULL,

AUTHORVARCHAR(15)NONULL

BDATEDATENOTNULL

LNAMBERSMALLINTNOTNULL,

CONSTRAINTCC1262855876375PRIMARYKEY(BNUMBER))INDMS01INDEXINDMS02

CONNECTRESET;

2.CONNECTTOLGY19;

CREATETABLEADMINISTRATOR.PEOPLE(IDCHARACTER(6)NOTNULLPNAMEVARCHAR(15)NOTNULL,

TMAMUBERVARCHAR(15)NOTNULL

SEXCHARACTER

(1)NOTNULL

ADRESSCHARACTER(15)NOTNULL

CONSTRAINTCC1262856121156PRIMARYKEY(ID))INDMS02INDEXINDMS01;

CONNECTRESET;

3.CONNECTTOLGY19;

CREATETABLEDB2ADMIN.SHUJIA(PNUMBERCHARACTER(6)NOTNULL,PADRESSCHARACTER(6)NOTULL

BLEIXINGVARCHAR(15)NOTNULL,

CONSTRAINTCC1262676030612PRIMARYKEY(PNUMBER))INDMS01INDEXINDMS02;CONNECTRESET;

4.CONNECTTOLGY19;

CREATETABLEADMINISTRATOR.BARROW(BNUMBERCHARACTER(6)NOTNULL

IDCHARACTER(6)NOTNULL

JDATEDATENOTNULL

CONSTRAINTCC1262856379687PRIMARYKEY(BNUMBER,ID),CONSTRAINTCC1262856394140FOREIGNKEY(BNUMBER)REFERENCESADMINISTRATOR.BOOK(BNUMBER)ONDELETENOACTIONONUPDATENOACTIONENFORCEDENABLEQUERYOPTIMIZATION,CONSTRAINTCC1262856401656FOREIGNKEY(ID)REFERENCESADMINISTRATOR.PEOPLE(ID)ONDELETENOACTIONONUPDATENOACTIONENFORCEDENABLEQUERYOPTIMIZATION)INDMS02INDEXINDMS01;

CONNECTRESET;

5.CONNECTTOLGY19;

CREATETABLEADMINISTRATOR.BOOKSTAY(BNUMBERCHARACTER(6)NOTNULL,PNUMBERCHARACTER(6)NOTNULL,CONSTRAINTCC1262856548281PRIMARYKEY(BNUMBER,PNUMBER),CONSTRAINTCC1262856557218FOREIGNKEY(BNUMBER)REFERENCESADMINISTRATOR.BOOK(BNUMBER)ONDELETENOACTIONONUPDATENOACTIONENFORCEDENABLEQUERYOPTIMIZATION,CONSTRAINTCC1262856575734FOREIGNKEY(PNUMBER)REFERENCESADMINISTRATOR.SHUJIA(PNUMBER)ONDELETENOACTIONONUPDATENOACTIONENFORCEDENABLEQUERYOPTIMIZATION)INDMS01INDEXINDMS02;

CONNECTRESET;

视图:

CONNECTTOLGY19;

CREATEviewDB2ADMIN.BOOKSTAYINAS

SELECTbname,shujia.pnumber,padress,bleixing

FROMbook,shujia,bookstay

WHEREbook.bnumber=bookstay.bnumber

andshujia.pnumber=bookstay.pnumber;

CONNECTRESET

6.3触发器的设计

给出建立触发器的SQL语句!

CREATETRIGGERADMINISTRATOR.CHUFAQINOCASCADEBEFOREUPDATEONADMINISTRATOR.BOOKREFERENCINGOLDASoldrNEWASnewrFOREACHROWMODEDB2SQL

WHEN(oldr.lnamber>1)

BEGINATOMIC

Setnewr.lnamber=oldr.lnamber;

END^

CONNECTRESET^

6.4数据库的运行

此处给出每个表的抓图及载入数据的语句(可以只给出一条语句)!

图6.1图书信息表

图6.2借书者信息表

图6.3借书信息表

图6.4书架信息表

图6.5书位置信息表

6.5数据库的查询

此处抓一些查询结果的界面,至少五个,对每个查询的图,写出相应得查询语句。

图6.6对book表进行更新操作

图6.7操作结果

图6.8对书的类型进行查询操作

图6.9查询结果

图6.10对book表插入信息的操作

图6.11结果

 

图6.12对book进行删除数据操作

图6.13删除结果

 

总结

 

参考文献

[1]杨鑫华,赵慧敏等.数据库原理与DB2应用教程[M].清华大学出版社,2007.8

[2]王珊,陈红.数据库系统原理教程[M].清华大学出版社,1998.7

[3]郑阿奇.DB2实用教程[M].电子工业出版社,2009.8

[4]巴克拉兹.DB29forLinux,UNIX,Windows数据库管理认证指南(原书第6版)[M].机械工业出版社,2009.4

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1