搜档网
当前位置:搜档网 › 交警队车辆管理系统

交警队车辆管理系统

交警队车辆管理系统
交警队车辆管理系统

《数据库实训项目报告》

班级:112803

姓名:党浩亮

学号:080183

完成日期:2011-6-26

(1)实训题目:

《交警队车辆管理系统》

(2)实训目的:

通过对《数据库系统概论》这门课程的学习,学会建立一个比较复杂的数据库系统,可以实现最基本的各项操作,例如,利用SQ语言对基本数据的查询,删除,修改以及合理的创建触发器和存贮过程。在时间允许的情况下,试着做一前台,能够使其链接至数据库并能实现对基本数据的录入,删除和修改,对数据库涉及到的一系列内容进一步去认识与了解,能够在以后的工作中灵活运用。

(3)实训要求:

1、用Microsoft SQLServer 2000中建立所要求的数据库

2、用SQL语言实现数据库中数据的查询、删除、修改等操作

3、用Visual Studio2008 设计并编程实现该数据库的前台操作

(4)正文:

①需求分析:

随着社会经济的快速发展,人们的生活水平在逐步提高,因此对物质的需求也随之增长。汽车则成为人们出行、旅游的主要代步工具,与此同时给各行政机关单位(交警队)带来了不少新的问题,例如:意外交通事故的发生、车辆的违章、车辆的盗窃犯罪等等。为了方便各行政机关单位的管理,特开发出《交警队车辆管理系统》,它可以帮交警队所有执法人员能够轻松的去工作,高质量的完成任务,其该系统所具有功能如下:

(1)录入信息

当用户购买车辆后,可以实现车辆,驾驶员等所有的相关信息,按照某个特定的顺序备录在案。

(2)修改信息

当用户因某种原因将其车辆转让、出售给他人时,可以更改其驾驶员的所有信息。

(3)删除信息

由于意外事故而造成车辆报废或是驾驶员死亡,可以将关于车辆驾信息或驶员信息删除掉。

(4)查询信息

车辆的被盗或是利用该车辆犯罪的,可以查询出该车的驾驶员所有信息,能够帮助公安机关破案。

(5)统计信息

能够实现在某一时间或某一区域内的车辆违章、事故的数量等信息,作为文件上报给上级部门。

②概要设计:

交警队车辆管理系统数据流图

③详细设计:

数据模型:

驾驶员(档案号、姓名、性别、出生日期、身份证号、准驾车型、住址、联系电话、累计积分)

汽车(车主姓名、车牌号码、发动机号、车辆名称、车辆外观、购车日期、购车时间、上户地点、上户时间、车辆用途、耗油量、出厂日期、报废日期)

保险(车牌号码、车主姓名、投保日期、保险类型、保险金额、终止日期、保险公司、经手人)

违章/事故(车牌号码、发生时间、发生地点、事故代码、处理部门)

处罚条例(事故代码、事故原因、刑事责任、罚款金额)

积分(积分代码、积分、扣分原因)

统计(汽车总量、事故总量、罚款总金额、死亡总人数)

注:单下划线为主键;双下划线为外键

④系统实现:

1、创建driver表

createtable driver

( ddaIDint primary key, /*档案编号*/

dname char(10),/*车主姓名*/

dsexchar(2), /*车主性别*/

dbirthdatetime, /*出生日期*/

dIDchar(50) foreign key, /*身份证号*/

dchx char(3),/*准驾车型*/

daddr char(50), /*车主住址*/

dtel int, /*联系电话*/

zjifen int /*累计积分*/

);

2、创建car表:

create tablecar

( carno char(20)foreign key,/*车牌号码*/

dname char(10),/*车主姓名*/

cmaIDchar(20) primary key, /*发动机号*/

cnamechar(20), /*车辆名称*/

ccolor char(10),/*车辆外观*/

cbuyt datetime,/*购车日期*/

ccost char(20),/*购车价格*/ caddr char(20),/*上户地点*/

cshahut datetime,/*上户日期*/

cyongtuchar(10),/*车辆用途*/

chaoyoufloat,/*耗油量*/

cshechadatetime, /*出厂日期*/

cbaofei datetime /*报废日期*/

);

3、创建baoxian表:

createtable baoxian

( carno char(20)primarykey, /*车牌号码*/ dname char(10),/*车主姓名*/ toubt datetime, /*投保日期*/

typechar(10),/*投保类型*/

baomon char(20),/*投保金额*/

deadl datetime, /*保险终止日期*/ bname char(50),/*保险公司*/

jsnamechar(10) /*经手人姓名*/ );

4、创建accident表:

create table accident

( carno char(20) primary key, /*车牌号码*/ acctime datetime, /*违章/事故时间*/ accaddr char(50), /*违章/事故地点*/ accID char(30)foreign key, /*违章/事故代码*/

accdept char(20)/*处理部门*/

);

5、创建daima表:

create table daima

(accID char(20)primary key, /*事故代码*/

acccasechar(300),/*事故原因*/

acccrim char(100),/*刑事责任*/

accmonechar(20) /*罚款金额*/

);

6、创建jifen表:

create table jifen

(jfedaima char(20) primary key, /*积分代码*/

jifen int, /*积分*/

kccase char(300) /*扣分原因*/

);

7、创建total表:

createtabletotal

( carcountchar(60),/*汽车总量*/acccount char(20),/*事故总量*/

kuacountchar(20), /*罚款总金额*/

diecount char(60), /*死亡总人数*/

);

⑤系统测试:

1、车牌号为“陕C84261”的汽车发生重大交通事故,查询该车的所属者姓名,并通过电话联系其家属。

select driver.name,daddr,dtel

from driver,car

where carno=’陕C84261’ and

driver.dname=car.name;

2、李东先生买了最近一辆汽车,要求将其他本人的基本信息存入档案、由于搬家的原因需更改相应的地址、最后因一场车祸而不幸身亡则删除其信息。

(1)insert

into driver(ddaID,dname,dsex,dbirth,dID,dchx,daddr,dtel)

values('1000011','李东','男','1985-03-25','610532198503250465','A','长安区官堰村','856304851');

(2) updatedriver

set daddr=’西安交通大学’

where ddaID=’1000011’;

(3)delete

from driver

where ddaID='1000011';

3、查询关于车牌号为陕AT7694的所有违章/事故信息。(accident与daima表的链接) selectacctime,accaddr,acccase,acccrim,accmone,accdept

from accident,daima

wherecarno='陕AT7694' and

accident.accID=daima.accID;

4、档案号为100004的司机因在高速公路上倒车、逆行、穿越中央分隔带掉头的原因而被扣除相应的积分,更新driver表的累计积分。

update driver

set zjifen=zjifen-jifen

from jifen

where ddaID='1000004' and

jfdaima='1111116'

5、建立出生于1987年的驾驶员的视图

createviewIS_driver

as

相关主题