uml停车场管理系统.docx
- 文档编号:24850471
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:16
- 大小:76.78KB
uml停车场管理系统.docx
《uml停车场管理系统.docx》由会员分享,可在线阅读,更多相关《uml停车场管理系统.docx(16页珍藏版)》请在冰豆网上搜索。
uml停车场管理系统
浙江海洋学院东海科学技术学院
数据库应用实训成果说明书
题目:
停车场管理系统的数据库设计
学生姓名:
章进
学号:
131335101
院系:
达内IT学院
班级:
13达内1班
指导教师:
李慧
2015年1月22日
浙江海洋学院东海科学技术学院课程设计任务书
2014—2015学年第一学期
院系达内IT学院专业计算机科学与技术班级13达内1班
学生姓名(学号)
章进
(131335101)
课程名称
数据库应用实训
题目
停车场管理系统的数据库设计
完成期限
自2015年1月5日至2015年1月18日共2周
设
计
依
据
1、对停车场管理系统的调查分析;
2、关系型数据库的设计方法,主要是ER图的绘制和从ER图转换成关系模式;
3、关系模式优化,要求规范化程度达到第三范式(3NF);
4、SQLServer2008中有关数据库的基本操作,要求掌握相应的T-SQL语句。
设
计
要
求
及
主
要
内
容
设计要求
结合所学的数据库理论知识,独立设计方案;学会查阅相关资料,通过查阅进一步熟悉常用方法的用途和技巧,并掌握这些方法的具体含义和如何使用这些方法解决实际问题;掌握综合性数据库设计的基本过程,完成高校教学管理系统的数据库设计,并且设计合理的数据完整性;认真撰写总结报告,培养严谨的作风和科学的态度。
主要内容
首先,分析选题的现实意义和可行性;其二,进行相应的需求分析(重点是数据需求分析);其三,根据需求分析画出ER图,并转换成关系模式;其四,设计数据库的物理结构;最后,在SQLServer2008中实现该数据库,并适当输入一些模拟数据。
参
考
资
料
[1]萨师煊等.数据库系统概论(第四版).高等教育出版社.2006
[2]杨桦等.SQLServer2000实用教程.清华大学出版社.2007
[3]王春玲等.数据库原理及应用.中国铁道出版社.2012
[4]陆慧娟等.数据库原理与应用.科学出版社.2006
[5]李春葆等.SQLServer2000应用系统开发教程.清华大学出版社.2005
摘要
数据库技术是计算机科学技术发展最快,应用最为广泛的技术之一。
其在计算机设计,人工智能,电子商务,企业管理,科学计算等诸多领域均得到了广泛的应用,已经成为计算机信息系统和应用的核心技术和重要基础。
21世纪以来,现代化产业高速发展,汽车作为日常交通工具已经普及社会的每一个角落,给人们的日常生活带来了极大的便利。
但是随着汽车拥有量的急剧增加,车辆停放的问题随之而来,如果没有合理的停放规则和秩序,势必引起许多不必要的麻烦,反而给生活带来不便。
停车场作为交通设施的组成部分,随着交通运输的繁忙和不断发展,人们对其管理的要求也不断提高,都希望管理能够达到方便、快捷以及安全的效果。
然后目前的许多停车场还处于一种纯人工的管理的模式,在车辆的管理上效率低下,而且十分容易出错。
因此需要一种合适的管理系统来解决这些问题,达到高效,简易的效果,给广大人民的出行带来方便。
本文主要介绍停车场管理系统的数据库设计,从需求分析到数据库的运行与维护都进行详细的叙述。
本系统是利用SQLServer2008开发出来的。
通过SQLServer2008建立停车场管理系统,大大方便和简化了数据的查询和处理,管理员可以通过SQL语言对表内数据进行添加,删除,修改,查询等操作,还可以建立多用户,对其使用权限进行分配和回收。
【关键词】SQL语言,数据库设计,停车场管理
1选题
1.1课题简介
随着数据处理的不断进步和计算机网络的迅速发展,使数据库应用系统不仅在功能而且在结构上都有了深刻的变化,而且运用在生活的每一个方面。
通过学习关系代数,关系演算,函数依赖,关系模式分解,关系模式的规范化让我们建立了扎实的关系数据库理论基础。
而在掌握基本理论的基础上掌握关系数据库的设计方法,掌握现代信息系统的开发方法也显得尤为必要。
目前在关系数据库中用得最多的SQL数据库,开发数据库的语言工具多数用DELPHI.。
所以对于计算机专业的学生来说掌握数据库应用的基本技术,熟悉编程语言与SQL数据库的结合运用是我们计算机专业学生之必备本领。
本次课程设计是以停车场管理系统为模拟模型,运用DELPHI编程语言结合SQL数据库所开发系统。
1.2设计目的
通过现有停车场管理方面的规范与信息技术的结合使停车场管理流程的管理更加系统化,数字化,从而提高相关单位的工作效率,因此我们设计了该停车场管理系统。
1.3设计内容
运用基于E-R模型的数据库设计方法和关系规范化理论做指导完成从系统的分析到设计直至系统的最终实现,开发公文收文办理系统,完成公文收文办理系统的全部功能。
首先做好需求分析,并完成数据流图,其次做概念分析,利用实体联系的方法将需求分析的用户需求抽象为信息结构,得到E-R图,然后就是逻辑结构设计,将E-R图转换为计算机系统所支持的逻辑模型。
最后利用SQLServer2008完成具体的实例。
2需求分析
2.1需求分析的任务
需求分析的任务是调查应用领域,对应用领域中的信息要求和操作要求进行详细分析,形成需求分析说明书。
重点是调查,收集和分析用户在数据管理中的信息要求,处理要求,数据的安全性与完整性要求。
为了完成需求分析的任务,要详细调查待开发的数据库应用部门的情况。
了解原系统工作概况,分析用户的各种需求,在此基础上确定新系统的功能,新系统必须考虑今后的扩充和改变,不能仅仅按当前应用需求来设计数据库。
2.2需求分析的过程
(1)调查现有停车场管理过程中的相关情况。
(2)熟悉现有停车场管理过程中的相关流程。
(3)根据
(1)
(2)调查的结果,对停车场管理中各应用的信息要求和操作进行详细分析,从中得到:
该系统的各个应用从数据库中得到哪些信息,这些信息的具体内容和性质是什么,要求完成什么样的处理功能,对某些处理要求的相应时间,即对数据的安全,完整性的要求。
(4)确定系统的边界。
确定整个系统中哪些由计算机完成,哪些由系统完成,哪些由人工完成。
由计算机完成的功能就是新系统完成的功能。
3概念设计(ER图)
3.1概念结构设计的方法和步骤
设计概念结构通常有四种方法:
自顶向下,自底向上,逐步扩张以及混合策略。
本公文收文办理系统采用自底向上的方法。
概念结构设计可分为两步:
第一步是抽象数据并设计局部视图,第二部是集成局部视图,得到全局的概念结构。
3.2视图的集成
1、描述进行视图集成的具体过程,得到如下部分概念结构E-R图。
2、描述进行视图集成的具体过程,得到如下总体概念结构E-R图。
4ER图转换成关系模式
4.1E-R图向关系模型的转换
实体:
车辆(carno,carsb,carcolor)carno是主码;
车位(cwno,cwpace,carno,carname,carcolor,caradd,cartel,carmon)cwno是主码;
收费记录(cwno,carno,cartime,moneypay,piece)cwno和carno是外码;
停车记录(cwno,carno,carin,carout,timetype,cwtype,carat,montime)cwno和carno是外码;
联系:
管理(车辆,收费记录)
停放(车辆,车位)
记载(车位,停车记录)
包含依赖关系如下:
管理[carno]
车辆[carno]
管理[carno]
收费记录[carno]
停放[carno]
车辆[carno]
停放[carno]
车位[carno]
记载[carno]
车位[carno]
记载[carno]
停车记录[carno]
记载[cwno]
车位[cwno]
机子[cwno]
停车记录[cwno]
4.2数据模型的优化
数据库的逻辑结构设计的结果不是唯一的。
为了提高数据库应用系统的性能,还应该根据应用需要适当的修改,调整关系模式,这就是数据模型的优化。
规范化理论为数据库设计人员判断关系模式的优劣提供了理论标准,可以用来预测模式可能出现的问题,是数据库设计工作有了严格的理论基础。
关系数据模型的优化通常以规范化理论为指导,方法为:
(1)确定数据依赖;
(2)对于各个关系模式之间的数据依赖进行绩效话处理,消除冗余关系;(3)按照数据依赖的理论对关系模式逐一分析,考察是否存在部分函数依赖,传递函数依赖,根据各个函数依赖集可知各个关系模式没有部分函数依赖和传递函数依赖,所以所有的关系模式都属于3NF,不需要进一步进行模式分解。
关系模型车辆和收费记录由于没有出现部分函数依赖和传递函数依赖,所以以上模型已经达到3NF。
但是关系模型停车记录存在依赖carin->timetype,timetype-/->carin,timetype->montime,因此应该将关系模型停车记录转换为3NF,优化后的关系模型为:
停车记录(cwno,carno,carin,carout,carat,timetype);
费率(timetype,montime);
模型优化后的关系模型为:
车辆(carno,carsb,carcolor)carno是主码;
车位(cwno,cwpace,cwtype,carno,carname,carsb,carcolor,caradd,cartel,carmon)cwno是主码;
收费记录(cwno,carno,cartime,moneypay,piece)cwno和carno是外码;
停车记录(cwno,carno,carin,carout,carat,timetype)cwno和carno是外码;
费率(timetype,montime)montime是主码;
5物理结构设计
各表格的定义
车辆表
列名
含义
数据类型
长度
能否取空值
备注
carno
车牌号码
char
8
no
主码
carsb
车辆品牌
char
10
no
carcolor
车辆颜色
char
4
no
车位表
列名
含义
数据类型
长度
能否取空值
备注
cwno
车位编号
char
8
no
主码
cwpace
车位位置
char
10
no
cwtype
车位类型
char
4
no
carno
车牌号码
char
10
no
carname
车主姓名
char
8
no
carsb
车辆品牌
char
10
no
carcolor
车辆颜色
char
4
no
caradd
车主地址
char
20
no
cartel
车主电话
char
8
no
carmon
车位余额
float
no
收费记录表
列名
含义
数据类型
长度
能否取空值
备注
cwno
车位编号
char
8
no
外码
carno
车牌号码
char
8
no
外码
cartime
停车时间
float
no
moneypay
停车费用
float
no
piece
发票编号
char
20
no
停车记录表
列名
含义
数据类型
长度
能否取空值
备注
cwno
车位编号
char
8
no
外码
carno
车牌号码
char
8
no
外码
carin
进入时间
datetime
no
carout
离开时间
datetime
no
timetype
时间段
char
6
no
费率表
列名
含义
数据类型
长度
能否取空值
备注
timetype
时间段
char
6
no
montime
收费费率
float
no
主码
6T-SQL语句
1、建立数据库
createdatabaseparking
on
(name='parkdata',filename='E:
\mydata\parkdata.mdf',
size=50,maxsize=150,filegrowth=5)
logon
(name='parklog',filename='E:
\mydata\parklog.ldf',
size=25,maxsize=100,filegrowth=10%)
2、建立车辆数据表
createtablecar
(carnochar(8)notnullprimarykey,
carsbchar(10)notnull,
carcolorchar(4)notnull
);
3、建立车位数据表
createtablecw
(cwnochar(8)notnullprimarykey,
cwpacechar(10)notnull,
cwtypechar(4)notnull,
carnochar(10)notnull,
carnamechar(8)notnull,
carsbchar(10)notnull,
carcolorchar(4)notnull,
caraddchar(20)notnull,
cartelchar(8)notnull,
carmonfloatnotnull
);
4、建立收费记录表
createtablefee
(cwnochar(8)notnullforeignkeyreferencescw(cwno),
carnochar(8)notnullforeignkeyreferencescar(carno),
cartimefloatnotnull,
moneypayfloatnotnull,
piecechar(20)notnull
);
5、建立停车记录表
createtablestop
(cwnochar(8)notnullforeignkeyreferencescw(cwno),
carnochar(8)notnullforeignkeyreferencescar(carno),
carindatetimenotnull,
caroutdatetimenotnull,
timetypechar(6)notnull
);
6、建立费率表
createtablerate
(timetypechar(6)notnull,
montimefloatnotnullprimarykey
);
7其他
在表中创建相关的视图,索引,存储过程,触发器等。
A视图
1、建立用于查询车辆收费的视图
createviewcar_fee
as
selectcar.carno,carsb,carcolor,cartime,moneypay,piece
fromcar,fee
wherecar.carno=fee.carno
2、建立用于查询车辆停车的视图
createviewcar_stop
as
selectcar.carno,carsb,carcolor,carin,carout,timetype
fromcar,stop
wherecar.carno=stop.carno
3、建立用于查询停车费率的视图
createviewstop_rate
as
selectcarno,carin,carout,stop.timetype,montime
fromstop,rate
wherestop.timetype=rate.timetype
4、建立用于查询车位收费的视图
createviewcw_fee
as
selectcw.cwno,cwpace,cwtype,cw.carno,carname,carsb,
carcolor,caradd,cartel,cartime,moneypay,carmon
fromcw,fee
wherecw.carno=fee.carno
B索引
1、createindexfc
onfee(cwno)
2、createindexsc
onstop(carno)
C存储过程
1、createprocedurecar1
as
selectCOUNT(carno)
fromcar
2、createprocedurecw2
as
selectCOUNT(cwno)
fromcw
3、createprocedurecar3
as
select*
fromcar
4、createprocedurecw4
as
select*
fromcw
5、createprocedurefee5
as
select*
fromfee
6、createprocedurestop6
as
select*
fromstop
7、createprocedurerate7
as
select*
fromrate
D触发器
1、createtriggera
oncwforinsert,update
as
ifexists(select*
fromcw
wherecarmon>=110)
begin
print'最低余额必须大于等于'
rollback
end;
8总结
经过两个星期的努力,终于设计出一个达到程序设计要求的数据库,虽然能够正确运行,但还是存在一些不足的地方需要进一步的纠正。
但总的来说该数据库基本达到了用户的基本要求。
结果不是很重要,通过自己动手设计数据库,不仅是一次很好的复习机会,也是发挥自己创造力的时候,在数据库设计过程中,我们能发现自己有很多地方还是不会或者不懂,但我们通过查询资料都能找到自己的答案,这样大大加深了自己对于某些生疏知识点的记忆。
参考文献
[1]萨师煊等.数据库系统概论(第四版).高等教育出版社.2006
[2]杨桦等.SQLServer2000实用教程.清华大学出版社.2007
[3]王春玲等.数据库原理及应用.中国铁道出版社.2012
[4]陆慧娟等.数据库原理与应用.科学出版社.2006
[5]李春葆等.SQLServer2000应用系统开发教程.清华大学出版社.2005
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- uml 停车场 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)