1、北京邮电大学数据库应用技术期末作业题目:智能停车场管理系统学院:电子工程学院学号:姓名:电话:12月28日智能停车场管理系统一、题目概述伴随二十一世纪到来,信息化、智能化已变得越来越关键。在停车场智能化中,包含停车场车位管理智能化、车主管理智能化、停车信息管理智能化。做好这些工作有利于提升停车场管理效率,提升停车场竞争力。伴随汽车工业迅猛发展和人民生活水平不停提升,中国汽车拥有量急剧增加。建设部统计数据显示,中国私人汽车拥有量年均增加20左右,大大快于经济增速。截至6月,全国汽车保有量达5356万辆,其中私人汽车3239万辆。停车场作为交通设施组成部分,伴随交通运输繁忙和不停发展,大家对其管理
2、要求也不停提升,全部期望管理能够达成方便、快捷和安全效果。停车场规模各不相同,对其进行管理模式也有不一样之处,管理者需要依据本身条件,选择应用经济、稳定管理程序,以免选择了高成本管理系统。本智能停车场管理系统意在设计一个简练、稳定、实用停车场管理信息系统,期望在容错性、实用性、易操作性等方面含有自己特色,而且保持一定可扩展性,以满足不一样停车场信息管理需求。一个简练、稳定、高效智能停车场管理系统需要含有以下功效:1.停车场职员个人信息统计、数据库访问权限设定;2.停车场车位情况实时监控,能够得悉某一时刻某车位是否空闲,假如停放了车辆,能获取车辆相关信息;3.对于临时车辆,依据车辆进出时间差进行
3、人工收费并统计;4.车主能够经过手机用户端访问停车场网页,查询停车场停车信息、一段时间停车统计、收费统计等。二、需求分析1 功效需求一个经典智能停车场管理信息系统需要包含车辆进出管理及收费功效、停车场车位及车辆信息查询功效和系统设置及管理功效。1.1 停车场车位划分首先将停车场划分为固定车位和自由车位两部分。固定车位又能够称为专用车位或内部车位,它特点是使用者固定,交费采取包月制或包年制,平时进出停车场时不再交费。对于固定车位车辆,系统有着具体信息统计,包含车辆信息和车主信息。自由车位又能够称为公用车位或公共车位,它特点是使用者不固定,针对临时性散客服务,车辆每次出停车场时,依据停车时间和车型
4、交纳停车费用。固定车位车辆总是停放在自己车位上,而不停放在自由车位上。不一样类型停车场固定车位和自由车位数目百分比是不一样,比如商场、车站、机场类停车场自由车位数目相对较多,而住宅小区、单位自用类停车场固定车位数目相对较多。停车场固定车位和自由车位数目通常情况下是固定不变,但有时依据停车场计划改变也需要调整,系统能够在系统管理功效里对这两类车位数目进行设定和修改。1.2 车辆进出管理及收费功效车辆进入停车场时,系统统计车辆车牌号码和进入时间。车辆离开停车场时,依据车辆车牌号码判定是否为固定车位车辆,假如为固定车位车辆则不收费,只统计车辆离开停车场时间;假如为自由车位车辆则依据进入时间和离开时间
5、计算出停车费用进行收取。全部进出停车场信息(包含车牌号码、进入时间、离开时间、停车费用)全部记入一个进出统计表以备查询和统计使用。1.3 停车场信息查询功效系统查询功效能够查询包含自由车位空闲数目、自由车位停车情况、固定车位使用情况、固定车位车主信息、车位和车牌对应信息等多个信息。每个车位后方能够设置红外线探头来检测该车位是否停车从而得到车位是否空闲数据。将自由车位空闲数目显示在停车场入口处,能够提醒立即进入停车场车主;假如自由车位已满,更能够给出指示,不许可继续进行自由车辆进入自由车位停车场。1.4 系统管理功效 系统管理功效能够查看一定时间内总收取费用情况,也能够查看一定时间内具体收费情况
6、,能够查看全部车辆进出停车场统计,也能够查询指定车辆(包含固定车位车辆和自由车位车辆)全部进出停车场统计,能够设定和修改固定车位和自由车位数目和停车费用费率,而且能够做系统初始化工作。2 数据需求2.1 停车场职员数据-工作号十位字符型数据;-姓名十位字符型数据;-用户名十位字符型数据;-密码十位字符型数据;-等级八位字符型数据,内容为“一般职员”或“管理员”。2.2 车位信息数据-车位号四位整形数据,停车场总车位数不超出9999;-车位类别八位字符型数据,内容为“固定车位”或“自由车位”;-状态四位字符型数据,内容为“空闲”或“在位”;-红外探头工作状态四位字符型数据,内容为“正常”或“故障
7、”。2.3 车辆入出场业务数据-业务流水号十位字符型数据,用于统计临时车进出场交易;-入场时间时间型数据,正确到秒; -出场时间时间型数据,正确到秒;-车牌号十位字符型数据;-车位号四位整形数据;-车型四位字符型数据,内容为“大型”或“小型”,用于计算收费金额;-收费金额浮点型数据。2.4 固定车位停车数据-车位号四位整形数据;-车牌号十位字符型数据;-车主姓名十位字符型数据;-身份证号十八位字符型数据;-联络电话十一位字符型数据;-车型四位字符型数据,内容为“大型”或“小型”;-生效日期时间型数据,正确到秒;-使用期至时间型数据,正确到秒;-收费金额浮点型数据。2.5 临时车位停车数据-业务
8、流水号十位字符型数据-车位号四位整形数据;-车牌号十位字符型数据;-车型四位字符型数据,内容为“大型”或“小型”;-入场时间时间型数据,正确到秒;-出场时间时间型数据,正确到秒;-收费金额浮点型数据。3 数据安全和约束3.1 数据安全数据库是存放数据地点,而数据是一个共享资源。所以确保数据库安全就显得很关键。利用视图来确保数据库安全,视图把用户能够使用数据定义在视图中,这么用户就不能使用视图定义以外其它数据,从而确保了数据库安全。经过视图机制,不一样用户只能访问系统授权视图,这么可提供系统数据一定程度上安全性。访问控制是对用户访问数据库多种资源权力控制。经过分配权限、设置权限等级来区分对待不一
9、样操作者对数据库操作来提升数据库安全性。3.2 数据约束经过建立主键、外键,使用触发器和级联更新和用户自定义语义约束来实现数据完整性约束。4 数据流图4.1 图例外部实体:数据处理过程:数据流: 数据存放:4.2 数据流图4.2.1 职员管理登录验证修改维护职员表职员4.2.2 车位信息 车位信息表入场出场车辆车辆4.2.3 固定车辆进出场入出场业务表入场车辆到期续费固定车位停车表出场4.2.4 临时车辆进出场余位?入出场业务表入场车辆车位信息表出场临时车位停车表三、概要设计1 实体及联络1.1 实体职员(工作号,姓名,等级,登录名,密码);车位(车位号,车位类别,状态,红外探头);固定车(车
10、位号,车牌号,车主姓名,身份证号,联络电话,车型,生效日期,使用期至,收费金额);临时车(业务流水号,车位号,车牌号,车型,入场时间,出场时间,收费金额);固定车车主(车位号,车牌号,车主姓名,身份证号,联络电话,车型);临时车车主(车位号,车牌号,车型)。1.2 联络职员:车位n:m,即多名职员共同管理停车场;职员:固定车n:m,即多名职员共同管理固定车辆;职员:临时车n:m,即多名职员共同管理临时车辆;车位:固定车1:1,即固定车辆只会对应一个固定车位;车位:临时车n:m,即一辆临时车能够停在任意临时车位上,一个临时车位也能够有多辆车停放;固定车:固定车车主n:1,即一个车主能够在停车场停
11、放多辆固定车辆;临时车:临时车车主n:1,即一个临时车车主能够在停车场停放多辆临时车辆;车位:固定车车主n:1,即一个固定车车主能够拥有多个固定车位;车位:临时车车主n:m,即一个固定车车主能够拥有多个固定车位,一个临时车位能够有多个车主去停放临时车辆。2 ER图依据以上实体之间联络,能够得到以下ER图。mmmnnnn1111nnnm1mn临时车车主车位固定车临时车拥有查询入场入场拥有查询固定车车主职员收费收费管理四、逻辑结构设计1 数据库模型数据库模型以数据字典方法给出。1.1 职员信息表tb_worker序号列名列汉字名关键字类型备注1Work_id工作号PKVarchar(10)2Wor
12、k_name姓名Varchar(10)3Log_id用户名Varchar(10)4Log_word密码Varchar(10)5Work_level等级Varchar(8)一般职员/管理员1.2 车位信息表tb_park序号列名列汉字名关键字类型备注1Park_num车位号PKInt(4)2Park_kind车位类别Varchar(8)固定车位/临时车位3Park_state状态Varchar(4)空闲/在位4Park_light红外探头Varchar(4)正常/故障1.3 入出场业务表tb_inout序号列名列汉字名关键字类型备注1Service_id业务流水号PKVarchar(10)固定车
13、流水号为02Time_in入场时间Datetime3Time_out出场时间Datetime4Park_num车位号Int(4)5Car_num车牌号PKVarchar(10)6Car_kind车型Varchar(4)小型/大型7Park_fee收费金额Float1.4 固定车位停车表tb_perm序号列名列汉字名关键字类型备注1Park_num车位号Int(4)2Car_num车牌号PKVarchar(10)3Drive_name车主姓名Varchar(10)4Drive_id身份证号Varchar(18)5Drive_phone联络电话Varchar(11)6Car_kind车型Varch
14、ar(4)小型/大型7Date_begin生效日期Datetime8Date_end使用期至Datetime9Park_fee收费金额Float1.5 临时车位停车表tb_temp序号列名列汉字名关键字类型备注1Service_id业务流水号PKVarchar(10)2Park_num车位号Int(4)3Car_num车牌号Varchar(10)4Car_kind车型Varchar(4)小型/大型5Time_in入场时间Datetime6Time_out出场时间Datetime7Park_fee收费金额Float2 数据库模型函数依靠集在职员信息表tb_worker中,每一个属性全部是不可分基
15、础数据项,且表中其它属性完全函数依靠于Work_id工作号这个关键字,而且表中除关键字其它属性没有传输依靠,所以职员信息表tb_worker属于第三范式。在车位信息表tb_park中,每一个属性全部是不可分基础数据项,且在一个特定时刻,表中其它属性完全函数依靠于Park_num车位号这个关键字,而且表中除关键字其它属性没有传输依靠关系,所以车位信息表tb_park属于第三范式。在入出场业务表tb_inout中,每一个属性全部是不可分基础数据项,且表中其它属性完全函数依靠于Service_id业务流水号和Car_num车牌号联合关键字,同时,在每次出入停车场过程中,Park_fee收费金额能够由
16、Time_in入场时间、Time_out出场时间和Car_kind车型确定,也即Park_fee收费金额函数依靠于Time_in入场时间、Time_out出场时间和Car_kind车型,所以入出场业务表tb_inout属于第二范式,不属于第三范式。在固定车位停车表tb_perm中,每一个属性全部是不可分基础数据项,且表中其它属性完全函数依靠于Car_num车牌号这个关键字,同时,对于每一辆拥有固定车位车辆,车主Drive_id身份证号和Drive_phone联络电话能够由Drive_name车主姓名得到,也即Drive_id身份证号和Drive_phone联络电话这两个属性函数依靠于Drive
17、_name车主姓名,所以固定车位停车表tb_perm属于第二范式,不属于第三范式。在临时车位停车表tb_temp中,和入出场业务表tb_inout同理,Park_fee收费金额能够由Time_in入场时间、Time_out出场时间和Car_kind车型确定,也即Park_fee收费金额函数依靠于Time_in入场时间、Time_out出场时间和Car_kind车型,所以临时车位停车表tb_temp属于第二范式。五、程序设计1 职员登录界面:停车场工作人员登录数据库系统界面。功效:限定工作人员才能进入停车场管理系统。输入:职员输入用户名和密码信息。处理:点击“取消”则清除用户名或密码;点击“登录
18、”若用户名和密码正确则进入系统,若用户名或密码不正确则提醒用户名或密码错误;点击“关闭”则退出登陆界面。输出:登陆成功,进入停车场管理系统界面;登录失败,提醒“用户名或密码错误,请重新输入”并回到登录界面,用户名信息保留,密码信息清空。2 管理员权限界面:职员中高等级管理员修改维护其它一般职员信息界面。功效:管理员管理进入数据库系统人员信息。输入:管理员登录后界面上方有“管理员”按钮,点击进入。处理:点击“管理员”进入职员表管理界面。输出:进入职员表,能够查看职员信息,修改、增加、降低职员项等。3 车位管理和查询界面:显示停车场实时停车信息,用动态大图显示实时车位情况和停放车辆车牌,另有搜索按
19、钮,查询指定车位或车牌号。功效:让职员对停车场内停放车辆有动态和全局把握;同时让车主便捷查询到空闲车位和车辆停放位置。输入:职员登录停车场管理系统后,界面左侧点击“车位信息”按钮进入;动态大图上方有“请输入车位号”和“请输入车牌号”两个输入框能够输入对应信息。车主能够经过手机用户端网址对停车场车位情况进行访问查询。处理:职员点击“车位信息”后进入车位管理界面,车主经过网页访问车位查询界面,动态大图显示目前各车位情况和所停放车辆车牌,在“请输入车位号”输入框输入停车场车位号,则大图跳转至该车位号位置,假如不存在该车位,则弹出对话框显示“车位号不存在,请重新输入”;在“请输入车牌号”输入框输入车牌
20、号,则大图跳转至该车停放位置,假如该时刻不存在该车牌号对应车辆,则弹出对话框显示“该车不在停车场中,请重新输入”。输出:停车场车位位置信息、是否空闲信息、查询指定车位或车辆位置信息。4 红外探头工作情况界面:能够放大缩小动态大图,在对应位置以电子地图形式展现每个红外探头工作状态。功效:实时观察探头是否正常工作,以免影响停车场其它功效运转。输入:职员登录停车场管理系统后,界面左侧“车位信息”下方“红外探头”按钮,点击进入。处理:以动态大图显示红外探头工作情况,红外探头编号即车位号,一个车位一个探头。输出:蓝色表示工作正常,红色表示探头故障需要查看、维修。5 停车信息查询界面:能够输入时间段、车牌
21、号、车主姓名、身份证号等信息,对最近停车统计和收费进行查询。功效:供职员查询停车场最近一段时间停车情况,也能够供车主在手机用户端查询。输入:职员登录停车场管理系统后,界面左侧“红外探头”下方“停车信息查询”按钮,点击进入,假如是车主进行查询,则进入对应停车场网站,即给出查询界面,以下图所表示,其中停车场职员查询时间段是必填项,其它选项能够不填;车主经过网页查询则除了要填时间段外,其它选项还需最少填一项。从* 时间段:车牌号:车主姓名:身份证号:联络电话:停车信息查询至取消查询处理:输入对应查询信息,点“查询”则显示结果,点“取消”则退出停车信息查询。输出:假如时间段填写有误,或其它信息未填或未
22、正确填写,则弹出对话框显示“信息输入有误”,若正确填写则进入输出界面,显示查询结果,如上图所表示。假如没有停车信息则表格为空。查询结果停车时段 车牌号车位号费用车型序号12、累计六、其它考虑1 建立索引 在数据库关系图中为表定义主键将自动创建主键索引,本数据库中能够为业务流水号和车牌号两个主键建立主键索引,当在查询中使用主键索引时,它还许可对数据快速访问。当数据库中数据量过大时才需要建立索引,确保数据查询快速和高效。2 触发器、存放过程、事务2.1 触发器能够为固定车位车辆续费建立触发器。当停车场固定车辆上次充值使用期已过,再对车位进行续费时,触发续费触发器,显示“该车位已于XX到期,是否从到
23、期时间起续费?”假如从到期时间续费,则续费时间在目前时间之前;假如从目前时间重新续订车位,则到期时间至目前时间时段停车算作临时停车,根据临时停车收费标准计费。能够建立停车统计删除触发器。这一触发器适适用于停车场内还未到期固定车辆。当职员想要删除某未到期固定车辆停车统计时,触发该触发器,显示“该固定车位还未到期,不能删除统计”,即不许可删除停车统计,确保数据库完整性。2.2 存放过程2.2.1 车位信息更新存放过程当停车场有车辆出入时,车位信息更新对应存放过程。2.2.2 增减职员存放过程当停车场职员调整时,管理员修改职员数据时对应存放过程。2.2.3 删除停车统计存放过程因为数据库容量有限,停
24、车场系统能够对六个月或十二个月前停车数据进行删除处理,删除以前数据过程对应这一存放过程。2.2.4 固定车位车辆变更存放过程某一固定车位车辆到期不再续租,或有新固定车辆租用这一固定车位对应这一存放过程。2.3 事务2.3.1 车辆入场事务在车辆入场数据库存放过程中,包含入出场业务表、固定车位停车表和临时车位停车表入场时间存放,同时车位信息表状态属性也发生更改,这些操作必需是同时完成,所以车辆入场时要确保这些数据同时发生更改,要么同时撤销数据。2.3.2 车辆出场业务 在车辆出场数据库存放过程中,包含入出场业务表、固定车位停车表和临时车位停车表出场时间存放,同时车位信息表状态属性也发生更改,这些操作必需是同时完成,所以车辆出场时要确保这些数据同时发生更改,要么同时撤销数据。