数据库课程设计停车场管理系统Word下载.docx
《数据库课程设计停车场管理系统Word下载.docx》由会员分享,可在线阅读,更多相关《数据库课程设计停车场管理系统Word下载.docx(56页珍藏版)》请在冰点文库上搜索。
b数据查询
c数据更新
一系统功能需求分析
1.1
停车场车位划分
1.2
车辆进出管理及收费功能
1.3
停车场信息查询功能
1.4
系统管理功能
1.5开发软件SQLServer2000
1.6存储过程简介
二系统设计及实现
2.1
系统功能模块设计
2.2安全性与完整性要求:
2.3流程图
b总流程图
2.4业务流程图
2.5数据字典
A数据项
B数据结构
C数据流
三.概念结构设计
3.1分ER图
3.2总ER图
四.逻辑结构设计
4.1E-R图向关系模式转换
4.2数据模型优化
4.3优化后的关系模式
4.4设计数据库表
4.5
4.6设计用户子模式
五物理结构设计
5.1数据库物理设计的内容和方法:
5.2.数据定义
5.2.1定义表格
5.2.2定义视图
5.2.3索引定义
5.3数据查询
5.4数据更新
5.4.1插入数据
5.4.2更改数据
5.4.3删除数据
六数据库的实施和维护
6.1数据库的载入和应用程序的调试
6.2数据库的试运行
6.3数据库的运行和维护
七总结
设计目的
随着21世纪的到来,信息化已变得越来越重要。
在停车场的信息化中,涉及停车场车位管理的信息化、车主管理的信息化、停车信息管理的信息化。
做好信息化工作有利于提高停车场的管理效率,提升停车场的竞争力。
随着汽车工业的迅猛发展,我国汽车拥有量急剧增加。
建设部统计数据显示,我国私人汽车拥有量年均增长20%左右,大大快于经济增速。
近年来,随着经济的快速发展和人民生活水平的提高,我国机动车保有量持续快速增长,其中私人汽车拥有量增速明显。
截至2007年6月,全国汽车保有量达5356万辆,其中私人汽车3239万辆。
停车场作为交通设施的组成部分,随着交通运输的繁忙和不断发展,人们对其管理的要求也不断提高,都希望管理能够达到方便、快捷以及安全的效果。
停车场的规模各不相同,对其进行管理的模式也有不同之处,管理者需要根据自身的条件,选择应用经济、稳定的管理程序,以免选择了高成本的管理系统。
本论文旨在设计一个简洁、稳定、实用的停车场管理信息系统,希望在容错性、实用性、易操作性等方面具有自己的特色,并且保持一定的可扩展性,以满足不同停车场的信息管理需求
一需求分析
需求分析的任务是通过详细调查实现世界要处理的对象,充分了解原系统工作概况,明确用户的各种需求,然后再此基础上确定新系统的功能。
调查的重点是‘数据’和‘处理’,通过调查、收集与分析,获得用户对数据库如下要求:
(1)、信息要求。
(2)、处理要求。
(3)、安全性与完整性要求。
进行需求分析首先是调查清楚用户的实际要求,与用户达成共识,然后分析与表达这些需求。
调查用户需求的具体步骤是:
(1)、调查组织机构情况。
包括了解该组织的部门组成情况、各部门的职责等,为分析信息流做准备。
(2)、调查各部门的业务活动情况。
包括了解各个部门输入和使用什么数据,如何加工处理这些数据,输出什么信息,输出到什么部门,输出结果的格式是什么。
(3)、在熟悉了业务活动的基础上,协助用户明确对新系统的各种要求,包括信息要求、安全性与完整性要求。
(4)、确定新系统的边界。
对前面调查的结果进行初步分析,确定哪些功能由计算机完成,那些活动由人工完成。
在调查过程中,可以根据不同的问题和条件,使用不同的调查方法。
常用的调查方法有:
(1)跟班作业。
通过亲身参加业务工作来了解业务活动的情况。
(2)开调查会。
通过与用户座谈来了解业务活动情况及用户需求。
(3)请专人介绍。
(4)询问。
对某些调查中的问题,可以找专人询问。
(5)设计调查表请用户填写,如果调查表设计得合理,这种方法是很有效的。
(6)查阅记录。
查阅与原系统有关的数据记录。
数据库应用系统开发背景
随着21世纪的到来,人们更深切地感受到了计算机在生活和工作中的作用越来越重要,越来越多职业需要具有计算机的应用技能。
掌握计算机是职业的雪要,更是事业发展的需要。
信息在社会和经济的发展中所起的作用越来越为人们所重视。
信息资源的开发利用水平已成为衡量一个国家综合国力的重要标志之一。
在计算机的三大主要应用领域(科学计算、数据处理与过程控制)中,数据处理的比重占70%左右。
计算机作为信息处理的工具,为适应数据处理需求的迅速提高,满足各类系统对数据处理的要求,在文件系统的基础上发展起了数据库系统。
数据库技术产生于年60年代末,70年代初期,其主要目的是有效地管理和存取大量的数据资源。
数据库技术主要研究如何存储的是通用化的相关数据集合,它不仅包括数据本身,而且包括数据之间的联系。
30多年来,数据库在理论上、实现技术上均得到很大的发展,研制出许多商用数据库管理系统,使得计算机应用渗透到各行各业的各类管理工作中。
现在,数据库技术已成为计算机领域里最重要的技术之一,是软件科学的一个独立的分支。
近年来,数据库技术和计算机网路技术的发展相互渗透、相互促进,已成为当今计算机领域内发展迅速、应用广泛的两大领域。
数据库系统是数据处理的核心机构,管理信息系统、办公自动化系统、决策支持系统等都是使用了数据库管理系统或数据库技术的计算机应用系统。
数据库方法原本是针对事务处理申大量管理需求的,但是它的应用范围不断扩大,不仅应用于事务处理,并且进一步应用到情报检索、人工智能、专家系统、计算机辅助设计等,涉及到非数值计算各方面的应用。
应用范围的扩大又进一步促进了数据库技术的深入发展,可以说数据库系统已成为计算机应用系统的重要组成部分之一。
微机数据库系统以开发成本低、简单易学、方便用户等优点,迅速得到了推广。
计算机应用人员只有了解数据库系统的基本原理,掌握数据库设计的基础理论,熟悉数据库管理系统特点,才能开发出好的数据库应用系统。
随着计算机计算机技术的飞速发展,计算机在企业管理中应用及普及,利用计算机实现企业信息管理势在必行。
本课题以高等院校为对象,作为高效要面对大量的课程设计项目及相关信息的处理,这就需要一个课程设计管理系统来提高管理工作的效率。
通过本系统,可以做到信息的规范管理、科学统计和快速查询,从而减少管理工作方面的工作量。
数据处理技术已深入到我们工作和生活的方方面面,而数据库技术是数据处理不可缺少的手段。
随着数据库技术的发展,面向对象的数据库、分布式数据库、多媒体数据库、数据库开发工具的研究方兴未艾,这些技术的发展使用软件的开发速度更快、成本更低、质量更好、功能更强。
1
系统功能需求分析
一个典型的停车场管理信息系统需要包括车辆进出管理及收费功能、停车场车位及车主信息查询功能和系统设置及管理功能。
首先将停车场划分为固定车位和自由车位两部分。
固定车位又可以称为专用车位或内部车位,它的特点是使用者固定,交费采用包月制或包年制,平时进出停车场时不再交费。
对于固定车位的车辆,系统有着详细的信息记录,包括车辆信息和车主信息。
自由车位又可以称为公用车位或公共车位,它的特点是使用者不固定,针对临时性散客服务,车辆每次出停车场时,根据停车时间和停车费率交纳停车费用。
固定车位的车辆总是停放在自己的车位上,而不停放在自由车位上。
不同类型停车场的固定车位和自由车位数目比例是不同的,比如商场、车站、机场类停车场的自由车位数目相对较多,而住宅小区、单位自用类停车场的固定车位数目相对较多。
停车场的固定车位和自由车位数目一般情况下是固定不变的,但有时根据停车场规划改变也需要调整,系统可以在系统管理功能里对这两类车位的数目进行设定和修改。
车辆进入停车场时,系统记录车辆的车牌号码和进入时间。
车辆离开停车场时,根据车辆车牌号码判断是否为固定车位车辆,如果为固定车位车辆则不收费,只记录车辆离开停车场时间;
如果为自由车位车辆则根据进入时间和离开时间计算出停车费用进行收取。
所有进出停车场的信息(包括车牌号码、进入时间、离开时间、停车费用)都记入一个进出记录表以备查询和统计使用。
系统的查询功能可以查询包括自由车位空闲数目、自由车位停车情况、固定车位使用情况、固定车位车主信息、自由车位使用率等多种信息。
将自由车位空闲数目或自由车位使用率显示在停车场入口处,可以提示即将进入停车场的车主;
如果自由车位已满,更可以给出指示,并不允许继续进行车辆进入自由车位停车场的操作。
系统的管理功能可以查看一定时间内总收取费用情况,也可以查看一定时间内的详细收费情况,可以查看所有车辆进出停车场的记录,也可以查询指定车辆(包括固定车位车辆与自由车位车辆)所有进出停车场的记录,可以设定和修改固定车位和自由车位数目以及停车费用的费率,而且可以做系统初始化的工作。
1.5开发软件SQLServer2000
主要特性
SQLServer的特性主要包括以下五个方面。
第一,Internet集成。
SQLServer2000数据库引擎提供完整的XML支持。
它还具有构成最大的Web站点的数据存储组成所需的可伸缩性、可用性和安全功能。
SQLServer2000程序设计模型与WindowsDNA构架集成,用以开发Web应用程序,并且SQLServer2000支持EnglishQuery和Microsoft搜索服务等功能,在Web应用程序中包含了用户友好的查询和强大的搜索功能。
第二,可伸缩性和可用性。
用一个数据库引擎可以在不同的平台上使用,从运行Windows98的便携式电脑,到运行Windows2003数据中心版的大型多处理器服务器。
SQLServer2000企业版支持联合服务器,索引视图和大型内存支持等功能,使其得以升级到Web站点所需的性能级别。
第三,企业级数据库功能。
SQLServer2000关系数据库引擎支持当今苛刻的数据处理环境所需的功能。
数据库引擎充分保护数据完整性,同时将管理上千万个并发修改数据库的用户的开销减小到最小。
SQLServer2000分布式查询使您得以引用来自不同数据源的数据,就好像这些数据是SQLServer2000数据库的一部分,同时分布式事务支持充分保护任何分布式数据更新的完整性。
复制同样使您得以维护多个数据复本,同时确保单独的数据复本保持同步。
可将一组数据复制到多个移动的脱接用户,使这些用户自主地工作,然后将他们所做的修改合并回发布服务器。
第四,易于安装、部署和使用。
SQLServer2000中包括一系列管理和开发工具,这些工具可改进在多个站点上安装、部署、管理和使用SQLServer的过程。
SQLServer2000还支持基于标准的、与WindowsDNA集成的程序设计模型,使SQLServer数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分。
这些功能使您的一快速交付SQLServer应用程序,使客户只需最少的安装和管理开销即可实现这些应用程序。
第五,数据仓库。
SQLServer2000中包括析取和分析汇总数据以进行联机分析处理(OLAP)的工具。
SQLServer2000中还包括一些工具,可用来直观地设计数据库并通过EnglishQuery来分析数据。
SQL(StructuredQueryLanguage,译为结构化查询语言)在关系数据库中的地位就犹如英语在世界上的地位。
它是数据库系统的通用语言。
利用它,用户可以用几乎同样的语句在不同的数据库系统上执行同样的操作。
比如“select*from数据表名”代表要从某个数据表中取出全部数据,在Oracle9i、SQLServer2000、Foxpro等关系型数据库中都可以使用这条语句。
SQL已经被ANSI(美国国家标准化组织)确定为数据库系统的工业标准。
存储过程是SQLServer数据库系统中很重要的一个概念,其是SQLServer数据库中存放的查询,而不是客户机上前端代码中存放的查询。
合理的使用存储过程,可以有效地提高程序的性能,假如在网路上某个查询操作有几百户到几千户同时执行,则从客户机通过网路向服务器发送这个查询需要增加大量网路通信流,即使不造成拥塞,也是网路速度(以及用户速度)大大减慢,为避免拥塞和让网络全速进行,就应该减少客户机通过网络向服务器发送代码量,从而减少网络的通信流。
为此,需将代码存放在服务器中,即将查询放进存储过程中,生成存储过程后,用户要取得数据,只需在网络上发送代码EXECstored_procedure_name即可。
并且将查询逻辑封装在数据库系统的存储过程中,可以大大提高整个软件系统的可维护性,当你的查询逻辑发生了改变的时候,不需修改并编译客户端应用程序以及重新分发他们到为数从多的用户手中,你只需要修改位于服务器端的实现相应查询逻辑的存储过程即可。
合理的编写自己需要的存储过程,可以最大限度的利用SQLServer的各种资源。
2
系统设计及实现
根据系统的需求分析,将系统设计的功能分为三大模块:
车辆进出管理模块、信息查询模块和系统管理模块。
其中车辆进出管理模块包括进入停车场和离开停车场费用结算,信息查询模块包括自由车位空闲数目指示、固定车位停车情况查询、固定车位车主信息查询、自由车位停车情况查询,系统管理模块包括总收取费用显示、停车费率设定及修改、详细收费情况查询、指定车辆进出记录查询、系统初始化功能。
2.2安全性与完整性要求
安全性要求:
a、系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证
用户身份不被盗用;
b、系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;
c、系统应对不同用户设置不同的权限,区分不同的用户。
完整性要求
是指数据库中数据的正确性和相容性。
数据库完整性由各种各样的完整性约束来保证,因此可以说数据库完整性设计就是数据库完整性约束的设计。
数据库完整性约束可以通过DBMS或应用程序来实现,基于DBMS的完整性约束作为模式的一部分存入数据库中。
通过DBMS实现的数据库完整性按照数据库设计步骤进行设计,而由应用软件实现的数据库完整性则纳入应用软件设计(本文主要讨论前者)。
数据库完整性对于数据库应用系统非常关键,其作用主要体现在以下几个方面:
1.数据库完整性约束能够防止合法用户使用数据库时向数据库中添加不合语义的数据。
2.利用基于DBMS的完整性控制机制来实现业务规则,易于定义,容易理解,而且可以降低应用程序的复杂性,提高应用程序的运行效率。
同时,基于DBMS的完整性控制机制是集中管理的,因此比应用程序更容易实现数据库的完整性。
3.合理的数据库完整性设计,能够同时兼顾数据库的完整性和系统的效能。
比如装载大量数据时,只要在装载之前临时使基于DBMS的数据库完整性约束失效,此后再使其生效,就能保证既不影响数据装载的效率又能保证数据库的完整性。
4.在应用软件的功能测试中,完善的数据库完整性有助于尽早发现应用软件的错误。
数据库完整性约束可分为6类:
列级静态约束、元组级静态约束、关系级静态约束、列级动态约束、元组级动态约束、关系级动态约束。
动态约束通常由应用软件来实现。
不同DBMS支持的数据库完整性基本相同,Oracle支持的基于DBMS的完整性约束如下表所示:
数据库完整性设计示例
一个好的数据库完整性设计首先需要在需求分析阶段确定要通过数据库完整性约束实现的业务规则,然后在充分了解特定DBMS提供的完整性控制机制的基础上,依据整个系统的体系结构和性能要求,遵照数据库设计方法和应用软件设计方法,合理选择每个业务规则的实现方式;
最后,认真测试,排除隐含的约束冲突和性能问题。
基于DBMS的数据库完整性设计大体分为以下几个阶段:
1.需求分析阶段
经过系统分析员、数据库分析员、用户的共同努力,确定系统模型中应该包含的对象,如人事及工资管理系统中的部门、员工、经理等,以及各种业务规则。
在完成寻找业务规则的工作之后,确定要作为数据库完整性的业务规则,并对业务规则进行分类。
其中作为数据库模式一部分的完整性设计按下面的过程进行。
而由应用软件来实现的数据库完整性设计将按照软件工程的方法进行。
2.概念结构设计阶段
概念结构设计阶段是将依据需求分析的结果转换成一个独立于具体DBMS的概念模型,即实体关系图(ERD)。
在概念结构设计阶段就要开始数据库完整性设计的实质阶段,因为此阶段的实体关系将在逻辑结构设计阶段转化为实体完整性约束和参照完整性约束,到逻辑结构设计阶段将完成设计的主要工作。
3.逻辑结构设计阶段
此阶段就是将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化,包括对关系模型的规范化。
此时,依据DBMS提供的完整性约束机制,对尚未加入逻辑结构中的完整性约束列表,逐条选择合适的方式加以实现。
在逻辑结构设计阶段结束时,作为数据库模式一部分的完整性设计也就基本完成了。
每种业务规则都可能有好几种实现方式,应该选择对数据库性能影响最小的一种,有时需通过实际测试来决定。
数据库完整性设计原则
在实施数据库完整性设计的时候,有一些基本的原则需要把握:
1.根据数据库完整性约束的类型确定其实现的系统层次和方式,并提前考虑对系统性能的影响。
一般情况下,静态约束应尽量包含在数据库模式中,而动态约束由应用程序实现。
2.实体完整性约束、参照完整性约束是关系数据库最重要的完整性约束,在不影响系统关键性能的前提下需尽量应用。
用一定的时间和空间来换取系统的易用性是值得的。
3.要慎用目前主流DBMS都支持的触发器功能,一方面由于触发器的性能开销较大,另一方面,触发器的多级触发不好控制,容易发生错误,非用不可时,最好使用Before型语句级触发器。
4.在需求分析阶段就必须制定完整性约束的命名规范,尽量使用有意义的英文单词、缩写词、表名、列名及下划线等组合,使其易于识别和记忆,如:
CKC_EMP_REAL_INCOME_EMPLOYEE、PK_EMPLOYEE、CKT_EMPLOYEE。
如果使用CASE工具,一般有缺省的规则,可在此基础上修改使用。
5.要根据业务规则对数据库完整性进行细致的测试,以尽早排除隐含的完整性约束间的冲突和对性能的影响。
6.要有专职的数据库设计小组,自始至终负责数据库的分析、设计、测试、实施及早期维护。
数据库设计人员不仅负责基于DBMS的数据库完整性约束的设计实现,还要负责对应用软件实现的数据库完整性约束进行审核。
7.应采用合适的CASE工具来降低数据库设计各阶段的工作量。
好的CASE工具能够支持整个数据库的生命周期,这将使数据库设计人员的工作效率得到很大提高,同时也容易与用户沟通。
2.3流程图
a分流程图
B总流程图
数据流图:
简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
数据流图的基本符号的意思:
1.矩形表示数据的外部实体;
2.圆角的矩形表示变换数据的处理逻辑;
3.少右面的边矩形表示数据的存储;
4.箭头表示数据流。
数据流程图中有以下几种主要元素:
→:
数据流。
数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。
如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。
由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。
□:
数据源(终点)。
代表系统之外的实体,可以是人、物或其他软件系统。
○:
对数据的加工(处理)。
加工是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出。
〓:
数据存储。
表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等。
固定车位业务流程图
自由车数据流程图
数据字典(Datadictionary)是一种用户可以访问的记录数据库和应用程序元数据的目录。
主动数据字典是指在对数据库或应用程序结构进行修改时,其内容可以由DBMS自动更新的数据字典。
被动数据字典是指修改时必须手工更新其内容的数据字典。
1数据字典是一个预留空间,一个数据库,这是用来储存信息数据库本身。
1数据字典可能包含的信息,例如:
数据库设计资料
储存的SQL程序
用户权限
用户统计
数据库的过程中的信息
数据库增长统计
数据库性能统计
数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果.
数据字典通常包括数据项\数据结构\数据流\数据存储和处理过程五个部分.
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合.
组成
1数据流
2数据流分量,即数据元素
3数据存储
4处理
数据字典
数据库的重要部分是数据字典。
它存放有数据库所用的有关信息,对用户来说是一组只读的表。
数据字典内容包括:
数据库中所有模式对象的信息,如表、视图、簇、及索引等。
分配多少空间,当前使用了多少空间等。
列的缺省值。
约束信息的完整性。
用户的名字。
用户及角色被授予的权限。
用户访问或使用的审计信息。
其它产生的数据库信息。
数据库数据字典是一组表和视图结构。
它们存放在SYSTEM表空间中。
数据库数据字典不仅是每个数据库的中心。
而且对每个用户也是非常重要的信息。
用户可以用SQL语句访问数据库数据字典。
关于数据的信息集合,是一种用户可以访问的记录数据库和应用程序元数据的目录,是对数据库内表信息的物理与逻辑的说明
系统建立三个基本数据库(表):
固定车位表、自由车位表和进出记录表,分别存放固定车位车辆及车主信息、自由车位停车信息和所有车辆进出记录