数据库系统分析与设计课程设计报告.docx

上传人:b****8 文档编号:10523591 上传时间:2023-02-17 格式:DOCX 页数:31 大小:762.02KB
下载 相关 举报
数据库系统分析与设计课程设计报告.docx_第1页
第1页 / 共31页
数据库系统分析与设计课程设计报告.docx_第2页
第2页 / 共31页
数据库系统分析与设计课程设计报告.docx_第3页
第3页 / 共31页
数据库系统分析与设计课程设计报告.docx_第4页
第4页 / 共31页
数据库系统分析与设计课程设计报告.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

数据库系统分析与设计课程设计报告.docx

《数据库系统分析与设计课程设计报告.docx》由会员分享,可在线阅读,更多相关《数据库系统分析与设计课程设计报告.docx(31页珍藏版)》请在冰豆网上搜索。

数据库系统分析与设计课程设计报告.docx

数据库系统分析与设计课程设计报告

 

课程设计(论文)

 

课程名称:

数据库系统分析与设计

题目:

城南客运站汽车管理系统

数据库设计与实现

院(系):

管理学院

专业班级:

信息管理与信息系统

姓名:

学号:

指导教师:

张新生

2012年12月4日

西安建筑科技大学课程设计(论文)任务书

专业班级:

信管1001学生姓名:

指导教师(签名):

一、课程设计(论文)题目

城南客运站汽车信息管理系统数据库设计与实现

二、本次课程设计(论文)应达到的目的

数据库系统分析与设计课程设计是信息管理与信息系统专业集中实践性环节之一,是学习完《数据库数据库系统原理及技术》及《数据库系统分析与设计》课程后进行的一次全面的综合练习。

其目的在与加深对数据库基础理论和基本知识的理解,掌握借助PowerDesigner开发和设计一个小型数据库系统时设计数据库系统模型的基本方法,提高运用数据库解决实际问题的能力。

三、本次课程设计(论文)任务的主要内容和要求(包括原始数据、技术参数、设计要求等)

要求学生能独立完成一个数据库模型的设计与实现,包括:

1)数据库系统需求分析;

2)数据库概念模型设计;

3)数据库逻辑模型设计;

4)数据库物理模型的实现;

5)完成不少于6000字的课程设计报告撰写。

四、应收集的资料及主要参考文献:

[1]王珊,萨师煊.数据库系统概论(第4版).北京:

高教出版社,2006年5月.

[2]赵韶平等.PowerDesigner系统分析与建模(第2版).北京:

清华大学出版社,2010.

[3]DataModelingandRelationalDatabaseDesign.OracleInc.2001.

五、审核批准意见

教研室主任(签字)

设计总说明

随着时代的进步、社会的发展、人们的生活形式与习惯也越来越多样化,出行成为了人们生活中的一个重要组成部分,而汽车成为许多人出行选择的交通工具。

面对巨大数量的乘客的购票乘车需要,汽车站就要选择使用先进的管理方法来实现方便、快捷的售票、准确的查询、有效的汽车管理。

城南客运站汽车信息管理系统是模拟西安城南客运站票务系统的一部分。

城南客运站汽车信息管理系统数据库设计与实现,首先对客运站的业务进行需求调查和分析,并根据调查和分析结果画出城南客运站汽车管理信息系统的业务流程图和数据流程图,在业务流程图的基础之上利用PowerDesigner创建该业务的数据库概念模型(CDM模型),然后检查CDM的正确性,在CDM模型正确后将CDM模型转换为数据库逻辑模型(LDM模型),然后生成数据库物理模型(PDM模型),然后将PDM模型生成所需的数据库。

关键字:

PowerDesigner,城南客运站汽车信息管理系统,概念数据模型,逻辑数据模型,物理数据模型

 

1绪论

1.1系统简介

随着计算机的普及,信息处理量的逐渐扩大,手工处理方式远远不能满足人们管理活动的需要,各种工作都逐渐由手工转为自动化,使许多复杂、繁琐、且需要很多人力的工作变得简单。

汽车站每天产生售票、乘客查询、汽车管理等行为,数量多使得汽车站汽车管理的数据量大,而且速度要求要快,传统的人力行为适应计算机应用软件的使用则能很好地满足汽车站的这一需要,提高汽车管理人员和调度人员的工作效率,节约相关管理成本。

数据库能保证数据的正确性、安全性、完整性,所以各种软件离不开数据库,数据库在计算机领域中占有很大的地位,正因为数据库如此重要,所以对设计数据库时要正确、效率高。

城南客运站汽车信息管理系统的数据库主要实现了乘客对汽车票信息的查询,售票员对车票的打印,以及对汽车班次的管理和对所有汽车的调度,从而为客运站的整个票务系统服务。

1.2设计目的

本系统的任务目标是,实现方便、快速售票,有效的汽车管理和调度,使用户准确了解车票的票价、余票、发车时间、班次等车票信息,实现系统的数据库,并对该数据库进行一定的维护功能。

1.3设计内容

1)对城南客运站汽车管理进行需求分析,包括数据分析、功能分析。

首先对乘客、汽车、售票员、车票、路线进行数据分析;然后对乘客、售票员进行功能分析。

2)依据数据分析结果绘制系统的业务流程图和数据流程图。

3)使用PowerDesigner对汽车管理系统建立数据库概念数据模型(CDM模型),主要任务是建立实体、联系、定义域、业务规则以及检查CDM模型的正确性。

4)由系统的概念模型转换生成逻辑数据模型(LDM模型)。

5)有CDM模型生成物理数据模型(PDM模型)。

6)连接数据库,由PDM模型生成物理数据库,实现汽车管理系统的数据库。

2需求分析

2.1.需求分析的任务

本系统是城南客运站汽车管理系统,此系统主要分为乘客、运输公司和售票员三方的服务。

运输公司提供路线和汽车的资料,客运站则对在本站收发的班次和车票进行管理,而乘客能得到的服务应该有班次路线和剩余票数的查询。

通过调查、收集和分析,获得用户对城南客运站汽车管理系统数据库的如下需求:

1)信息需求。

路线:

出发地,目的地,出发时间。

乘客:

乘客姓名,乘客身份证号,乘客ID。

汽车:

汽车ID,班次,车型,座位容量。

车票:

票价,燃油费,站务费,总计,余票量,班次,目的地。

售票员:

工号,姓名,窗口号。

2)处理要求。

乘客:

可以购票,查询余票信息,查询所的乘汽车信息。

售票员:

可以查询车票信息,打印车票。

汽车(司机):

查询班次,查询路线。

2.2系统数据流程分析

1)基本业务调查

此次设计通过网络检索的方法,对所设计系统的业务进行调查,明确其业务流程图,如图2-1。

图2-1汽车管理系统业务流程图

2)数据流程图

根据调查结果和业务流程图,给出系统业务数据流程图,如下图。

◆顶层数据流程图:

图2-2顶层数据流程图

◆第一层数据流程图:

图2-3第一层数据流程图

2.3数据字典

在数据流程图中,数据信息和处理过程如下所示:

1)数据流定义

可以通过表格的形式给出数据流程图的主要数据流,如表2.1所示。

表2.1汽车管理系统主要数据流定义

序号

名称

结构定义

最大数据流量

1

乘客

乘客ID+姓名+身份证号

5000次/天

2

汽车

汽车ID+车型+座位容量

500次/天

3

路线

目的地+出发地+出发时间

1000次/天

4

车票

车票ID+票价+燃油费+站务费+班次

5000次/天

5

售票员

售票员ID+窗口号+姓名

1000次/天

2)数据存储定义

可以采用如下表格的形式给出系统的主要数据定义,如表2.2所示。

表2.2汽车管理系统主要数据存储定义

编号

名称

输入

输出

数据量

存取频度

存取方式

说明

D1

购票信息

乘客信息

查看票价,余票量,

25000条

1000次/天

联机处理;检索和更新;随即检索

车票ID唯一且不为空

D2

班次信息

路线信息

班次,

出发时间,目的地,

5000条

1000次/天

联机处理;检索和更新;随即检索

班次唯一不为空

3)处理过程

可以采用如下表格的形式给出系统的主要处理过程定义,如表2.3所示。

表2.3汽车管理系统主要处理过程定义

序号

处理过程名称

输入

输出

处理说明

P0

汽车管理

班次信息,

车票信息

汽车信息

对汽车按类编号,将汽车编号信息化管理,统一调度

P0.1

购票

乘客信息,

路线信息

车票信息

对车票分类编号,索引

P1.2

汽车管理

车票信息,

班次信息

汽车信息

对汽车分类编号,索引

3概念模型设计

3.1概念模型设计的方法和步骤

3.1.1建立实体

1)打开PowerDesigner开发环境选择File→New项在打开窗口中选择ConceptualDataModel项如图3-1所示。

图3-1创建ConceptualDataModel

2)在Palette工具栏中,选择Entity实体图标,在屏幕任意位置单击左键,则一个实体放置在模型窗口上。

然后在窗口空白处单击右键,鼠标恢复箭头形状。

3)双击实体图形符号打开EntityProperties(实体属性)窗口,定义实体的属性,如图3-2所示。

图3-2实体属性窗口

4)实体属性定义完毕后单击“确定”按钮,返回CDM主窗口。

实体的图形如图3-3所示。

图3-3车票实体的图形符号

5)重复上述

(2)~(4)的步骤,依次创建其他各实体。

所有实体创建完毕以后,结果如图3-4所示。

图3-4所有实体符号图

3.1.2建立联系

实体创建完毕以后,就可以在实体之间建立联系。

建立联系的过程如下:

1)在Palette工具栏中选择Relationship图标,在有联系的两个实体中的一个实体图形符号上单击左键,拖动鼠标至另外一个实体,释放鼠标就可在两个实体之间建立联系。

2)选中联系的图形符号双击打开联系属性定义窗口其中General页的内容如图3-5所示。

3)在Cardinalities页中填写联系的细节信息,如图3-6所示。

4)定义完毕后单击“确定”返回CDM主窗口。

5)重复上述

(2)~(4)步骤,建立其他所有实体之间的联系。

 

图3-5General选项卡图3-6Cardinalities选项卡

6)所有实体联系创建完毕以后,即生成了汽车管理系统的CDM模型,如图3-7所示。

图3-7城南客运站汽车管理系统CDM模型

3.1.3定义域

在城南客运站汽车信息管理系统中,实体车票中的“票价”,“燃油费”,“站务费”,“合计”等属性都是数值型数据,数据类型和宽度都相同,所以可以先在模型定义一个公用的域,然后将域连接到各个属性。

1)选择Model→Domains菜单项,打开ListofDomains,在其中新增一个域,如图3-8所示。

图3-8域列表窗口

2)定义完毕以后,单击“确定”按钮,返回CDM模型。

3)双击要引用的域的实体图形符号,打开实体定义窗口,选择Attributes页,增加一个属性,但不要定义数据类型,只需在Domain栏中单击,则显示所有预先定义好的域名,选择合适的域,然后单击“Apply”按钮,就可以看到属性的数据类型变为域的数据类型。

3.1.4定义业务规则

业务规则是信息系统所描述对象特定的数据完整性,在城南客运站汽车信息管理系统中,需要定义以下几种业务规则。

◆校验型:

描述信息系统的数据约束。

在城南客运站汽车信息管理系统中,发车时间必须先于到达时间,座位号必须小于座位容量。

◆公式型:

描述信息系统的计算。

在城南客运站汽车管理信息系统中,合计等于票价、燃油费、站务费之和;余票等于座位容量减去座位号。

定义业务规则的具体过程如下:

1)在CDM模型中选择Model→Business Rules命令,打开ListofBusinessBules(业务规则定义)窗口,如图3-9所示。

图3-9ListofBusinessBules窗口

2)单击AddaRow图标,在Name栏中输入名称“总计”,在Code栏中输入Total_Sum,在RuleType栏中选择业务规则的类型为Formula。

按照同样的方法添加“余票量”业务规则。

3)定义完毕以后单击Apply按钮,选中刚才定义的业务规则,单击Properties图标,打开BusinessRulesProperties窗口,选择Expression选项卡,在选择Client选项卡,表示在客户端是想的业务规则。

在其中输入计算方法。

“总计=票价+燃油费+站务费”,如图3-10所示。

图3-10合计的业务规则

4)按照同样的方法定义“余票量”的业务规则,“余票量=座位容量-座位号”如图3-11所示

图3-11余票量的业务规则

5)定义完毕后单击“确定”按钮返回。

6)单击“业务规则定义”窗口的OK按钮,返回CDM模型主窗口。

7)双击“车票”实体,在Attributes选项卡中选择“总计”并查看属性,在Rules选项卡,单击Add Objects图标,在Selection窗口中选择新增的业务规则“总计”,将新增的业务规则添加到“车票”实体中。

按同样方法,将“余票量”业务规则添加到“余票”属性中。

3.1.5检查CDM的正确性

定义好CDM模型以后,利用系统自带的检查功能检查模型的错误,为下一步的工作打下良好的基础。

具体步骤如下:

1)选择Tools→CheckModel命令,打开CheckModelParameters窗口,如图3-12所示。

图3-12CheckModelParameters窗口

2)设置检查选项后,单击“确定”按钮,开始执行检查。

完毕后弹出ResultList窗口,如图3-13所示。

图3-13ResultList窗口

3)查看结果并根据提示进行修改,直到没有错误和警告为止。

3.1.6生成CDM模型文档

城南客运站系统模型文档生成的具体步骤如下:

1)选择File→New菜单项,在打开的窗口选择Multi-ModelReport选项单击“OK”按钮打开生成模型文档设置窗口。

1)单击“确定”按钮,进入模型文档设计窗口。

2)在模型设计窗口可以修改报告的内容,以满足实际要求。

3)修改完毕后,单击“OK”按钮返回到模型文档设计窗口,选择窗口中的RTF图标,在弹出窗口中输入模型文档的文件名,单击“OK”按钮开始生成文档。

然后可以利用Word打开文档。

3.2系统概念模型

根据系统的需求分析,得出城南客运站汽车信息管理系统数据库的概念模型,如图3-14所示。

图3-14城南客运站汽车信息管理系统CDM模型

 

4逻辑模型设计

4.1逻辑模型设计的方法

CDM生成LDM的具体方法如下:

1)打开CDM模型,选择Tools→GenerateLogicalDataModel命令,打开LDMGenerationOptions窗口。

2)选择Detail选项卡,进行其他选项的设置。

3)选择Selection选项卡,可以选择CDM、实体。

4)单击按钮“确定”按钮,开始生成LDM。

4.2逻辑模型实现

城南客运站汽车信息管理系统数据库逻辑数据模型(LDM模型)如图4-1所示。

图4-1城南客运站汽车信息管理系统数据库的LDM模型

4.3数据完整性约束定义

根据上面的关系模式,数据库的完整性约束如下所示:

1)实体完整性约束

城南客运站汽车信息管理系统数据库的每一个关系模式中的主码如表4.1所示。

表4.1各关系模式中的主码

实体

主键

路线

目的地

汽车

汽车ID

乘客

乘客ID

售票员

工号

车票

车票ID

2)参照完整性约束

关系模式的参照完整性如表4.2所示:

表4.2关系模式的参照完整性

实体

参照实体

主键

外键

路线

汽车

目的地

汽车ID

汽车

车票

汽车ID

目的地

车票

汽车

车票ID

汽车ID

乘客

车票

乘客ID

车票ID

售票员

工号

5物理数据库模型设计与实现

5.1物理数据库模型的图示

1)打开CDM模型,选择Tools→GeneratePhysicalDataModel命令,在PDMGenerateOptions窗口,在General选项卡中选择生成PDM的方式及参数。

2)选择Detail选项卡,进行细节选项设置。

3)选择Selection选项卡,选择要转换为PDM表的实体。

4)单击“确定”按钮生成PDM模型,如图5-1所示。

图5-1城南客运站汽车信息管理系统数据库物理数据模型

5.2物理数据库模型的详细表示

◆数据项清单,如表5.1所示。

表5.1数据项清单

名称

代码

数据类型

长度

乘客ID

passengerID

Characters(20)

20

乘客姓名

passengername

Characters(20)

20

余票

RemainTicket

Integer

出发地

startplace

Variablecharacters(200)

200

发车时间

starttime

Date&Time

合计

Total

Money

姓名

WorkerName

Characters(20)

20

工号

WorkerID

Characters(20)

20

座位号

SeatNamber

Integer

座位号

SeatNamber

Integer

座位容量

seatvolume

Integer

所需时间

timeneed

Float

检票口

CheckWindow

Integer

检票口

CheckWindow

Integer

汽车ID

busID

Characters(20)

20

燃油费

FuelFee

Money

班次

BusOrder

Characters(10)

10

目的地

destination

Variablecharacters(200)

200

票价

TicketPrice

Money

窗口号

WindowID

Integer

站务费

OfficeFee

Money

身份证号

cradID

Characters(18)

18

车型

bustype

Characters(50)

50

车票ID

TicketID

Characters(50)

50

◆表的清单,如图5.2所示。

 

表5.2表的清单

名称

代码

乘客

乘客

售票员

售票员

售票员——乘客

售票员——乘客

售票员——车票

售票员——车票

汽车

汽车

路线

路线

车票

车票

 

◆引用的清单

表5.3引用的清单

名称

代码

父表格

子表格

外键列

乘客——汽车

乘客——汽车

汽车

乘客

汽车ID

售票员——乘客

售票员——乘客2

乘客

售票员——乘客

乘客ID

售票员——乘客

售票员——乘客

售票员

售票员——乘客

工号

售票员——车票

售票员——车票

售票员

售票员——车票

工号

售票员——车票

售票员——车票2

车票

售票员——车票

车票ID

汽车——路线

汽车——路线

路线

汽车

目的地

车票——乘客

车票——乘客2

乘客

车票

乘客ID

车票——乘客

车票——乘客

车票

乘客

车票ID

车票——路线

车票——路线

路线

车票

目的地

5.3物理数据库模型的实现

5.3.1连接数据库

只有在与用户数据库正确连接以后,才能把设计的PDM生成到数据库中。

数据结构生成到用户数据库中,用户才能在这些结构中保存信息与索引信息。

PDM与用户数据连接的步骤如下:

1)在PDM窗口中选择Database→Connect命令,打开ConnecttoaDataSource窗口,如图5-1所示。

图5-1ConnecttoaDataSource窗口

2)在ODBCmachinedatasource下拉列表框中选择建立一个数据源,单击Connect按钮。

5.3.2访问数据库

1)选择Database→ChangeCurrentDBMS命令,选择用户的DBMS。

2)改变当前PDM的目标DBMS时,需要考虑应该保护的原DBMS对象。

5.3.3生成数据库

PowerDesigner设计的PDM模型可以直接生成到数据库中,生成数据库的过程如下:

1)选择Database→GenerateDatabase命令,打开DatabaseGeneration窗口,连接上以后查看Database信息,如图5-2所示。

图5-2DatabaseInformation

2)选择Option选项卡,在选项卡中可以对各类PDM对象设置参数。

3)选择Format选项卡,在选项卡中设置生成格式信息。

4)选择Selection选项,在选项卡中选择需要生成数据库的对象。

5)选择Preview选项卡进行预览或单击“确定”按钮生成数据库,如图5-2所示。

图5-2生成数据库窗口

5.3.4物理数据库的实现

以下是有PDM生成物理数据库的部分SQL语句:

/*===========================================================*

/*Table:

乘客*/

/*===========================================================*createtable乘客(

乘客IDchar(20)notnull,

汽车IDchar(20)notnull,

车票IDchar(50)null,

乘客姓名char(20)null,

身份证号char(18)null,

constraintPK_乘客primarykeynonclustered(乘客ID)

go

/*===========================================================*

/*Table:

路线*/

/*===========================================================*

createtable路线(

目的地varchar(200)notnull,

出发地varchar(200)null,

发车时间datetimenull,

所需时间floatnull,

constraintPK_路线primarykeynonclustered(目的地)

go

/*===========================================================*

/*Table:

车票*/

/*===========================================================*

createtable车票(

车票IDchar(50)notnull,

目的地varchar(200)null,

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

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

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

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