汽车调度管理系统-数据库课程设计_第1页
汽车调度管理系统-数据库课程设计_第2页
汽车调度管理系统-数据库课程设计_第3页
汽车调度管理系统-数据库课程设计_第4页
汽车调度管理系统-数据库课程设计_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、汽车调度管理系统1.需求分析1.1信息要求:数据库中需要存储的信息有: 1、车辆的基本数据,包括车辆车辆编码,车牌号,车辆类型,载重,座位数,车辆状态,年检合格,保险到期,备注等信息 2、驾驶员基本数据,包括驾驶员姓名,性别,生日,身份证号,手机号,驾驶证号,驾驶证类型,有无病事假 3、操作人员基本数据,包括车队管理员,车辆管理员,司机管理员的联系方式,地址,身份证号,年龄,性别,系统登录密码等图1. 汽车调度系统功能表1.2处理要求:系统管理: 1、可按照职务类型创建用户并对用户权限的定义 2、对登录用户进行密码验证管理 3、车队管理员可创建车辆管理员,司机管理员并进行派车登记的填写;车辆管

2、理员负责车辆的信息包括新车的入库、维修、出库、回库登记;司机管理员负责新司机的加入、司机的出车、病事假、返工的登记;业务员负责申请车辆信息与司机的信息的查询与登记。 1.基本信息管理:l 车辆基本信息登记,登记信息为上述l 司机基本信息登记,登记信息为上述l 职员基本信息登记2.用车调度管理:l 查出可调度的符合申请要求的车辆l 登记出车信息l 查询正在出车的信息l 查询正在检修的车辆信息l 查询正在请假的司机信息3.车辆维修管理:l 登记信息包括车牌号,送修日期,送修原因,维保费用,取车备注l 回库登记,登记信息包括车牌号,驾驶员,回库时间,完成情况等信息l 因司机病事假而导致无法正常出车的

3、重新信息调动4.司机病事假管理:l 登记司机病事假信息,包括姓名,请假原因,请假时长l 因司机病事假而导致无法正常出车的重新信息调动5.数据查询管理:l 车辆基本信息查询,根据所需车辆要求如载客数,载重数信息查询可用车辆,该车辆应为人数载重满足要求,车辆状态符合:未出车,未在维修,年检合格,保险未到期l 车辆出车记录查询,可以查询到某辆车的某段间的出车记录l 驾驶员出车记录查询,可以查询到某驾驶员的某段时间的出车信息 1.3安全性与完整性要求 1、系统管理员创建用户,并赋予用户相应的权限 2、进行用户密码管理 3、避免数据冗余,使数据简洁清晰4、 避免误删,空值,重复等数据操作存储错误1.4数

4、据字典1.4.1数据项表1.车辆信息字段字段类型大小范围约束车牌号Char(10)主码车型Char(8)大型客车(>20) 中型客车(920)小型客车(<9)重型货车(>12t) 中型货车(4.512t)轻型货车(<4.5t)微型货车(<0.75t)车载重Float(4)重型货车(>12t) 中型货车(4.512t)轻型货车(<4.5t)微型货车(<0.75t)车座位数Int(2)大型客车(>20) 中型客车(920)小型客车(<9)入库时间DateTime表2.司机信息字段字段类型大小范围约束司机姓名Char(8) 非空司机联系方式

5、Char(11)非空驾驶证号Char(11)主码驾驶证类别Char(2)A1,A2,A3,B1,B2,C1非空表3.请假信息字段字段类型大小范围约束请假编号Char(8)主码司机姓名Char(10)非空驾驶证号Char(18)外码请假日期DateTime非空返工时间DateTime非空 表4.维修信息字段列名字段类型大小范围约束维修编号Char(10)非空主码车牌号Char(10)外码参照表1 CCard送修日期DateTime非空 表5.出车登记信息字段列名字段类型大小范围约束登记编号Char(10)非空主码车牌号Char(10)非空外码 参照表1 车型司机姓名Char(8)司机联系方式Ch

6、ar(11)驾驶证号Char(18)非空外码 参照表2申请时间DateTime返库时间DateTime客户姓名Char(8)客户联系方式Char(11) 表6.用户信息字段列名字段类型大小范围约束用户编号Char(8)非空主码用户姓名Char(8)非空用户身份证号Char(18)非空用户联系方式Char(11)非空用户职位Char(10)非空1.4.2数据流,数据存储及处理过程如下图:图2.汽车调度系统数据流图 图3.汽车调度管理系统用户关系图3、 概念设计图4.汽车管理E-R图图5.司机管理E-R图图6.调度管理E-R图图7.申请管理E-R图3.逻辑设计3.1关系模型将E-R图转换成对应的关

7、系模型,关系的码用下横线标出1. 车辆信息表(车牌号,车型,车载重,车座位数,入库时间)2. 司机信息(司机姓名,司机联系方式,驾驶证号,驾驶证类别)3. 请假信息(请假编号,司机姓名,驾驶证号,请假日期,返工时间)4. 维修信息(维修编号,车牌号,送修日期,返库时间)5. 出车登记信息(登记编号,车牌号,车型,司机姓名,司机联系方式,驾驶证号,申请时间,返库时间,客户姓名,客户联系方式)6. 用户信息(用户编号,用户姓名,用户身份证号,用户联系方式,用户职位)3.2视图设计(设计用户子模式)3.2.1供业务员查看的视图:l 一周内业务信息视图(登记编号,车牌号,车型,司机姓名,司机联系方式,

8、申请时间,返库时间,客户姓名,客户联系方式)Creat View Work_Info(登记编号,车牌号,车型,司机姓名,司机联系方式,申请时间,返库时间,客户姓名,客户联系方式)ASSelect *From出车登记信息3.2.2供车队管理员查看的视图l 无病假司机视图(司机姓名,司机联系方式,驾驶证号,驾驶证类别)Creat View HeathDriver_Info(司机姓名,司机联系方式,驾驶证号,驾驶证类别)ASSelect *From 司机信息Where司机姓名 NOT Exists 请假信息.司机姓名 AND GETDATE() =< 返工时间 l 无维修车辆视图(车牌号,车型

9、,车载重,车座位数)Creat View HeathCar_Info(车牌号,车型,车载重,车座位数)ASSelect *From车辆信息Where车牌号 NOT Exists 维修信息.车牌号 AND GETDATE() =< 返库时间l 正在执行业务车辆视图(登记编号,车牌号,车型,司机姓名,司机联系方式,申请时间,返库时间)Create View OnWorkCar_Info(登记编号,车牌号,车型,司机姓名,司机联系方式,申请时间,返库时间,客户姓名,客户联系方式)ASSelect *From出车登记信息Where 返库时间 >= GETDATE()3.2.3供车辆管理员查

10、看的视图l 查询B类车近期业务:Create View Car1_Task_Info(登记编号,车牌号,车型,司机姓名,司机联系方式,申请时间,返库时间,客户姓名,客户联系方式)ASSelect *From出车登记信息Where车型 = B3.2.4供司机管理员查看的视图l 查询张三近期业务(登记编号,车牌号,车型,司机姓名,司机联系方式,申请时间,返库时间,客户姓名,客户联系方式)Create View Drive1_Work_Info(登记编号,车牌号,车型,司机姓名,司机联系方式,申请时间,返库时间,客户姓名,客户联系方式)ASSelect *From出车登记信息Where司机姓名=张三

11、4.物理设计4.1索引设计为了加快查询速度,在基本表上建立了3个最经常用到的查询,加快查询速度。Create Cluster CarInfo Index ON 车辆信息表(车型)Create Unique TaskInfo Index ON出车登记信息(登记编号)Create Cluster DriverInfo Index ON司机信息(驾驶证类别) 数据库Sql语句select distinct 汽车信息.车牌号,汽车信息.车型from 申请信息,出车登记信息,汽车信息where 申请信息.车型=汽车信息.车型 and 汽车信息.车牌号 not in ( select 汽车信息.车牌号 f

12、rom 出车登记信息,维修信息,汽车信息 where (汽车信息.车牌号 = 出车登记信息.车牌号 and 出车登记信息.返库时间 is null) or (汽车信息.车牌号 = 维修信息.车牌号 and 维修信息.返库时间 is null) ) )*+select distinct 司机信息.司机姓名,司机信息.驾驶证号,司机信息.司机联系方式from 申请信息,出车登记信息,司机信息where 申请信息.驾驶证类型 =司机信息.驾驶证类型and 司机信息.驾驶证号 not in(select 司机信息.驾驶证号 from 出车登记信息,请假信息,司机信息where(司机信息.驾驶证号=出车

13、登记信息.驾驶证号 and 出车登记信息.返库时间 is null)or(司机信息.驾驶证号=请假信息.驾驶证号 and 请假信息.返工时间 is null)*+Java 连接数据库import java.sql.*;import javax.swing.*;import java.awt.*;import javax.swing.JOptionPane;public class databaseprotected static String driver="net.sourceforge.jtds.jdbc.Driver"protected static String u

14、rl="jdbc:jtds:sqlserver:/localhost:1433;DatabaseName=database_zbg"protected static String username="sa"protected static String password="1234"protected static Connection conn=null;private database()tryif(conn=null)Class.forName(driver);conn=DriverManager.getConnection(u

15、rl,username,password);else return;catch(Exception e)e.printStackTrace();/数据库查询操作public static ResultSet executeQuery(String sql)tryif(conn=null)new database();return conn.createStatement().executeQuery(sql);catch (SQLException e)e.printStackTrace();return null;/数据库更新public static int executeUpdate(S

16、tring sql)tryif(conn=null)new database();return conn.createStatement().executeUpdate(sql);catch(SQLException e)System.out.println(e.getMessage();return -1;finallyimport java.sql.ResultSet;import java.sql.SQLException;public class login public static void main(String args) throws SQLException String sqlstr="SELECT * FROM ps "ResultSet result=database.executeQuery(sqlstr);while(result.next()String s1,s2,s3,s4,s5,s6,s7;s1= result.getString(1);s2= result.getString(2);s3= result.getString(3);s4= result.getString(4);s5= result.getString(5);s6= result.getString(6

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论