收费停车场管理系统数据库设计Word格式文档下载.docx

上传人:b****5 文档编号:18201337 上传时间:2022-12-14 格式:DOCX 页数:17 大小:22.16KB
下载 相关 举报
收费停车场管理系统数据库设计Word格式文档下载.docx_第1页
第1页 / 共17页
收费停车场管理系统数据库设计Word格式文档下载.docx_第2页
第2页 / 共17页
收费停车场管理系统数据库设计Word格式文档下载.docx_第3页
第3页 / 共17页
收费停车场管理系统数据库设计Word格式文档下载.docx_第4页
第4页 / 共17页
收费停车场管理系统数据库设计Word格式文档下载.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

收费停车场管理系统数据库设计Word格式文档下载.docx

《收费停车场管理系统数据库设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《收费停车场管理系统数据库设计Word格式文档下载.docx(17页珍藏版)》请在冰豆网上搜索。

收费停车场管理系统数据库设计Word格式文档下载.docx

与此同时通过网络搜索查找现行的停车场管理系统,根据这两者综合来进行需求分析。

调查时需要较强的信息捕捉能力以及事后的总结与思考,同时学会用网络较快较准确地搜索到需要的资料是很关键的。

(2)业务流程图

图1.停车处理子系统业务流程图

图2.车位综合管理子系统业务流程图

图3.收费子系统业务流程图

(3)数据流图

顶层数据流程图

图4.收费停车场管理系统顶层数据流图

第二层数据流图

图5.收费停车场管理系统第一层数据流图

第三层数据流

图6.收费停车场管理系统第二层数据流图

(1)

图7.收费停车场管理系统第二层数据流图

(2)

图8.收费停车场管理系统第二层数据流图(3)

(4)数据字典

数据项:

表2-1数据项说明

数据项编号

数据项名

数据项含义

与其它数据项的关系

存储结构

别名

DI-1

Cwno

车位编号

char(10)

编号

DI-2

Carno

车牌号码

车牌

DI-3

Carname

车主姓名

姓名

DI-4

Carcolor

车辆颜色

char(4)

颜色

DI-5

Carpho

车辆照片

bit

照片

DI-6

Caradd

联系地址

char(20)

地址

DI-7

Cartel

联系方式

电话

DI-8

Carat

在位情况

DI-9

Carin

进入时间

datetime

DI-10

Carout

离开时间

DI-11

Carmon

车位余额

float

余额

DI-12

Montime

收费费率

费率

DI-13

Moneypay

停车费用

收费

DI-14

Cwtype

车位类型

DI-15

Cartime

停车时间

时间

DI-16

Piece

发票编号

Dl-17

Carsb

车辆品牌

车名

Dl-18

Cwpace

车位位置

位置

Dl-19

Timetype

时间段

char(6)

数据结构:

表2-2数据结构

数据结构编号

数据结构名

数据结构定义

组成

DS-1

Fixed

固定车位信息

Cwno、Cwpace、Carno、Carname、Carcolor、CarsbCarpho、Caradd、Cartel、Carmon

DS-2

Free

自由车位信息

Cwno、Cwpace

DS-3

Stop

停车信息

Cwno、Carno、Carat、Carin、Carout、Timetype、Cwtype、Montime

DS-4

Moneynote

收费记录

Cwno、Carno、Cartime、Moneypay、Piece

DS-5

Car

车辆信息

Carno、Carsb、Carcolor

(5)处理逻辑描述

表2-3处理逻辑描述

处理编号

处理功能

处理过程

PR-1

判断用户查询涉及的功能模块

固定车位信息模块、自由车位信息模块、停车车辆信息模块、进出车辆记录信息模块、收费记录模块:

先确定查询所涉及的功能模块;

然后,确定要查询的内容,确定查询数据流向;

最后显示查询结果。

PR-2

判断用户修改要涉及的模块,同时把相应的修改数据传到相应的模块之中

先确定更新所涉及的功能模块;

然后,把更新信息传送到相应的模块中;

最后,进行相应的更新操作。

2.概念设计

目标

概念结构设计师是将需求分析得到的用户需求抽象为信息结构即概念模型的过程。

它是整个数据库设计的关键。

概念结构设计步骤分为两步:

第一步是抽象数据并设计局部视图,第二步是集成局部视图,得到全局的概念结构。

设计过程

(1)选择中层数据流为切入点,通常选择实际系统中的子系统;

(2)设计分E-R图,即各子模块的E-R图;

(3)生成初步E-R图,通过合并方法,做到各子系统实体、属性、联系统一;

(4)生成全局E-R图,通过消除冲突等方面。

通过分析系统的业务流图与数据流图,得到系统围绕“车辆”与“车位”之间的相互关系。

阶段成果

分E-R图:

全局E-R图:

E-R图属性如下所示:

车辆:

Car(Carno,Carsb,Carcolor)Carno是主码;

固定车位:

Fixed(Cwno,Carpace,Carno,Carname,Carcolor,Carpho,Caradd,Cartel,Carmon);

自由车位:

Freed(Cwno,Carpace)Cwno是主码;

收费:

Moneynote(Cwno,Carno,Cartime,Moneypay,Piece)Cwno和Carno是外码;

停车:

Stop(Cwno,Carno,Carin,Carout,Timetype,Cwtype,Montime)Cwno和Carno是外码;

3.逻辑设计

逻辑结构设计的任务是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。

逻辑结构设计时一般要分为3步进行:

将概念结构转换为一般的关系、网状、层次模型;

将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换;

对数据模型进行优化。

任务与结果

3.2.1数据组织

(1)将E-R模型转换为关系模型

转换的原则是:

一个实体型转换为一个关系模式。

实体的属性就是关系的属性,实体的码就是关系的码。

对于实体间的联系则有以下不同的情况:

一个1:

1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。

三个或三个以上实体间的一个多元联系可以转换为一个关系模式。

与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。

一个1:

n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。

如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。

一个m:

n联系转换为一个关系模式。

与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。

3个或3个以上实体间的一个多元联系可以转换位一个关系模型。

与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。

具有相同码的关系模式可合并。

E-R图向关系模型转换的结果是:

Fixed(Cwno,Carpace,Carno,Carname,Carcolor,Carpho,Caradd,Cartel,Carmon)自由车位:

Stop(Cwno,Carno,Carin,Carout,Timetype,Cwtype,Carat,Montime)Cwno和Carno是外码;

(2)模型优化

关系模型Car和Moneynote由于没有出现部分函数依赖和传递函数依赖,所以以上模型已经达到3NF。

但是关系模型Stop存在函数传递依赖Carin?

Timetype,Timetype-/->

Timetype?

Montime,因此应该将关系模型Stop转换为3NF,优化后的关系模型为“停车:

Stop(Cwno,Carno,Carin,Carout,Timetype)与费率信息:

Moneyt(Timetype,Montime)。

关系模型Fixed和Freed之间存在数据冗余,因此可以将两个关系模型合并为一个关系模型FFed,并添加识别信息,合并后的关系模型为

Ffed(Cwno,Carpace,Cartype,Carno,Carname,Carsb,Carcolor,Carpho,Caradd,Cartel,

Carmon)

模型优化后的关系模型为

车辆:

车位:

Ffed(Cwno,Cwpace,Cwtype,Carno,Carname,Carsb,Carcolor,Carpho,Caradd,Cartel,

Carmon);

收费:

Moneynote(Cwno,Carno,Cartime,Moneypay,Piece)Cwno和Carno是外码,被参照表是Ffed和Car;

停车:

Stop(Cwno,Carno,Carin,Carout,Carat,Timetype);

费率信息:

(3)数据库模式定义

表4-1车辆信息

列名

数据类型

是否为主码

是否为外码

取值范围

可否为空

含义说明

Char

表4-2车位信息

Bit

联系电话

Float

100~200

表4-3停车信息

Char(6)

高峰、一般、低谷

表4-4费率信息

大于0

表4-5收费记录

(4)用户子模式定义

表4-6用户子模式定义

序号

视图名称

视图定义

视图作用

备注

V-1

Carinformation

车位号,车牌号

查询在位车辆信息

V-2

Carfixedtion

车位号,车牌号,车主,车名,车色,车照,地址,电话,余额

查询在固定车位停车的车辆信息

V-3

carfreetion

车位号,车牌号,车名,车色

查询在自由车位停车的车辆信息

V-4

Carinouttion

车位号、车牌号、进入时间、离开时间、时间段

查询车辆进出记录

作用与V-1不一样

V-5

moneytime

时间段、费率

查询及修改收费费率

V-6

Moneytion

总收费

查询停车场总收费

v-7

Carmoney

车牌号、缴费总额

查询每辆车的缴费额

(5)功能模块图

图9.系统功能模块图

4.物理设计

物理设计就是为一个给定的逻辑数据结构模型选取一个最合适应用要求的物理结构的过程。

物理设计通常分为两步:

确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;

对物理结构进行评价,评价的重点是时间和空间效率。

如果评价结果满足原设计要求,则可进入到物理实施阶段,否则,就需要重新设计或修改物理结构,有时甚至要返回逻辑设计阶段修改数据模型。

物理设计的内容包括:

为关系模型选择存取方法;

设计关系、索引等数据库文件的物理存储结构。

4.2.1数据存取方面

由于经常需要判断是否有空余车位,所以要经常查询停车信息,因此在Stop表的Cwno上建立聚簇索引以提高查询效率。

为了方便查询各个车辆的收费记录,在Moneynote表的Carno上建立聚簇索引以提高查询效率

4.2.2功能模块图

(1)车位信息查询及更新模块图:

图10.车位信息查询及更新模块图

(2)停车信息查询及更新模块图:

图11.停车信息查询及更新模块图

(3)收费费率查询及更新模块图:

图12.收费费率查询及更新模块图

结果

4.3.1存储过程

表5-1存储过程

存储过程名称

定义

作用

P-1

Sof1

详见附录3-16

查询固定车位总数

P-2

Sof2

详见附录3-17

查询自由车位总数

P-3

Sof3

详见附录3-18

查询空闲自由车位数目

P-4

Sof4

详见附录3-19

查询车位总数

P-5

Sof5

详见附录3-20

在Moneynote中查询任意车辆的收费

P-6

Sof6

详见附录3-21

在Car中插入一元组

P-7

Sof7

详见附录3-22

在Ffed中插入一元组

P-8

Sof8

详见附录3-23

在Stop中插入一元组

P-9

Sof9

详见附录3-24

在Moneynote中插入一元组

P-10

Sof10

详见附录3-25

查询车辆Car信息

P-11

Sof11

详见附录3-26

查询车位Ffed信息

P-12

Sof12

详见附录3-27

查询停车Stop信息

P-13

Sof13

详见附录3-28

查询收费Moneynote信息

P-14

Sof14

详见附录3-29

删除一条收费Moneynote记录

P-15

Sof15

详见附录3-30

修改固定车位车辆余额Carmon

4.3.2触发器

表5-2触发器

T-1

Insert_or_update_carmon

详见附录3-31

限定余额值必须大于等于120的触发器

tri_moneypay

详见附录3-32

限制修改MONEYNOTE中大于50的触发器

tri_del_mo

详见附录3-33

限制删除moneynote表中大于70的数据

5.数据库实施阶段

数据库实施阶段就是用DBMS提供的数据定义语言与其他实用程序将数据库逻辑设计和物理设计结果严格描述出来,成为DBMS可以接受的源代码,再经过调试产生目标模式,然后组织数据入库。

数据库实施阶段包括两项重要的工作,一项是数据的载入,另一项是应用程序的编码和调试。

5.2.1建立数据库

(1)建立数据库、数据表、视图、索引等

(a)建立数据库定义语句

createdatabaseParking;

(b)建立数据表定义语句

建立车辆数据表:

createtableCar

(Carnochar(10)primarykey,

Carsbchar(10),

Carcolorchar(4)

);

建立车位信息表:

createtableFfed

(Cwnochar(10)primarykey,

Cwpacechar(10)notnull,

Cwtypechar(4)notnull,

Carnochar(10),

Carnamechar(10),

Carsbchar(10),

Carcolorchar(4),

Carphobit,

Caraddchar(20),

Cartelchar(20),

Carmonfloatcheck(Carmon>

=100andCarmon<

=200)

建立停车信息表:

createtableStop

(Cwnochar(10)notnull,

Carnochar(10)notnull,

Caratbitnotnull,

Carindatetime,

Caroutdatetime,

Timetypechar(6),

foreignkey(Cwno)referencesFfed(Cwno),

foreignkey(Carno)referencesCar(Carno)

建立收费费率表:

createtableMoneyt

(Timetypechar(6)primarykey,

Montimefloatnotnullcheck(Montime=1orMontime=2orMontime=,

建立收费记录表:

createtableMoneynote

(Cwnochar(10),

Cartimefloatnotnull,

Moneypayfloatcheck(Moneypay>

0),

Piecechar(10),

(2)数据入库

系统包括共有5张基本表,因此事先在Excel中录入数据,然后使用SQLServer2000数据导入/导出向导功能,直接将数据导入到相应的基本表中。

6.数据库调试与测试

对收费停车场管理系统的具体功能进行测试,测试包括:

(1)测试各视图的功能,测试结果

视图功能测试

V-1.查询在固定车位停车的车辆信息的视图功能验证

V-2.查询车辆进出记录的视图功能验证

v-3查询在自由车位停车的车辆信息的视图功能验证

V-7查询每辆车的缴费总额的视图功能验证

V-1查询在位车辆的所有信息

V-6查询停车场总收费的视图功能验证

(2)测试各存储过程的功能,测试结果

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

当前位置:首页 > 经管营销 > 人力资源管理

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

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