汽车租赁管理系统数据库设计

合集下载

数据库课程设计汽车租赁系统

数据库课程设计汽车租赁系统

数据库课程设计汽车租赁系统数据库课程设计:汽车租赁系统本文将围绕数据库课程设计题目《汽车租赁系统》,详细介绍设计这一系统所需考虑的各个方面,包括需求分析、数据库设计、系统功能和界面设计等。

通过本文的阐述,读者将能够对汽车租赁系统有一个全面的了解。

一、需求分析汽车租赁系统的设计首先需要进行需求分析。

通过与相关利益相关者的讨论和调研,我们可以明确以下几个方面的需求:1. 用户管理:包括用户注册、登录、个人信息管理等功能。

2. 汽车管理:包括汽车信息的录入、查询、修改、删除等功能。

3. 租赁管理:包括租赁订单的生成、查询、修改、删除等功能。

4. 支付管理:包括租赁费用计算、支付方式选择等功能。

5. 报表管理:生成租赁情况统计报表、财务报表等功能。

二、数据库设计在需求分析的基础上,需要进行数据库设计。

主要包括以下几个方面的设计:1. 用户表设计:包括用户ID、用户名、密码、联系方式等字段。

2. 汽车表设计:包括汽车ID、汽车品牌、型号、颜色、所在地等字段。

3. 租赁订单表设计:包括订单ID、用户ID、汽车ID、租赁开始时间、租赁结束时间等字段。

4. 支付表设计:包括支付ID、订单ID、支付金额、支付方式等字段。

5. 报表表设计:包括报表ID、报表类型、生成时间等字段。

三、系统功能设计在数据库设计完成后,需要考虑系统的功能设计,包括以下几个方面:1. 用户管理功能:实现用户注册、登录、个人信息修改等功能。

2. 汽车管理功能:实现汽车信息的录入、查询、修改、删除等功能。

3. 租赁管理功能:实现租赁订单的生成、查询、修改、删除等功能。

4. 支付管理功能:实现租赁费用计算、支付方式选择等功能。

5. 报表管理功能:实现租赁情况统计报表、财务报表等功能。

四、系统界面设计系统界面的设计需要注重用户友好性和易用性。

可以采用现代化的设计风格和响应式布局,确保系统在不同设备上的正常显示。

对于不同功能模块,可以设计相应的菜单和操作界面,提供直观的操作方式。

汽车租赁系统数据库设计说明书

汽车租赁系统数据库设计说明书
客户登录系统的密码
身份证号
identityNum
Varchar(20)
客户的身份证号码
年龄
age
int
客户年龄
性别
sex
int
客户性别,取值0(男)1(女)
联系方式
phone
Varchar(20)
客户的电话号码
是否会员
vip
int
是否会员,取值0(是)1(否)
车辆信息表—car(用于存放车辆基本信息)
汽车租赁系统数据库设计说明
管理员信息表—admin(用于存放管理员的信息)
字段名
字段代码
数据类型
主键
字段说明
员工id
ad_id
Int

递增,方便数据库管理,并无实际意义
姓名
ad_name
Varchar(20)
管理员的姓名
账号
ad_num
Varchar(20)
管理员登录系统所使用的账号
密码
ad_psw
Varchar(50)
管理员登录系统的密码
客户信息表—customer(用于存放客户信息)
字段名
字段代码
数据类型
主键
字段说明
客户id
cus_id
Int

递增
客户姓名
cus_name
Varchar(20)
客户姓名
客户账号
cus_num
Varchar(20)
客户登录系统账号
客户密码
cus_pwd
Varchar(50)
保险类型
insurance
Varchar(20)
该车辆所入保险类型
是否预约

汽车租赁系统《数据库课程设计》设计说明书

汽车租赁系统《数据库课程设计》设计说明书

汽车租赁系统《数据库课程设计》设计说明书编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(汽车租赁系统《数据库课程设计》设计说明书)的内容能够给您的工作和学习带来便利。

同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为汽车租赁系统《数据库课程设计》设计说明书的全部内容。

内蒙古科技大学结课大作业课程名称:数据库原理及应用题目:汽车租赁公司CIS数据库系统的设计班级:数学—2011学号:1168132127学生姓名:庄玉雪目录前言 (1)第一章系统概述 (2)1。

1背景 (2)1。

2发展现状 (2)第二章需求分析 (3)2.1 功能需求 (3)2.2 数据需求 (4)第三章系统设计 (5)3。

1系统结构 (5)3。

2 数据库设计 (5)3。

2.1 ER图 (5)3.2。

2 逻辑结构 (6)3.2。

3 数据库物理结构 (7)3.2.4 数据库实现 (9)3。

3用户控制系统 (10)3。

4模块设计 (10)3.4.1 汽车管理模块设计 (10)3.4。

2 基本设置模块设计 (10)第四章后记 (11)4。

1结论 (11)4。

2结束语 (11)参考文献 (12)前言中国汽车租赁以80年中国国际信托投资公司用跨国租赁方式为北京市租赁一批汽车作为开始,已经经历了将近二十年的发展。

汽车租赁也从仅仅为外事活动和旅游提供服务发展到为寻常百姓服务.投资汽车租赁的企业越来越多,全国大中城市基本都有汽车租赁公司存在,用于租赁的车辆总数不断扩大。

据网络资料:我国目前拥有驾驶证的公民多达3000万,而且,这一数量每年还在以一定比例上升.我们了解到在这批人当中有许多是短期内暂时买不起车辆的,但他们中的绝大部分人需要临时用车,而且也有临时租车的支付能力,因此,经营性租赁有极其巨大的市场需求。

数据库课程设计+汽车租赁系统

数据库课程设计+汽车租赁系统

摘要本数据库主要完成对于轿车销售信息管理,包括轿车信息,员工信息,客户信息,轿车销售信息等,系统可以完成对各类信息的浏览、查询、统计等功能。

它采用软件工程的思想,使用IBM DB2作为后台的数据库管理系统。

在系统中既有单条件查询和多条件查询,也有精确查询,其目的都是为了方便用户使用。

本论文主要介绍了本课题的开发过程,所要完成的功能。

并说明了系统设计的重点和设计思想,以及设计过程中所做的主要工作,通过SQL结构化查询语言来实现相关信息的查询功能。

关键词:SQL语言;IBM DB2;数据库设计;汽车租赁管理系统。

I大连交通大学数据库课程设计目录第一章绪论 (1)1.1课题简介 (1)1.2设计目的 (1)1.3设计内容 (2)第二章需求分析 (3)2.1需求分析的任务 (3)2.2需求分析的过程 (3)2.3数据字典 (6)第三章概念结构设计 (7)3.1概念结构设计的方法与步骤 (7)3.1.1概念结构设计的方法 (7)3.1.2概念结构设计的步骤 (7)3.2数据抽象与局部视图设计 (7)3.3视图的集成 (8)第四章逻辑结构设计 (9)4.1E-R图向关系模型的转换 (9)4.2数据模型的优化 (9)4.3数据库的结构 (9)第五章数据库的实施与运行 (12)5.1数据的载入 (12)5.2数据库的运行 (13)总结 (15)参考文献 (16)第一章绪论第一章绪论1.1课题简介轿车销售信息管理系统是为汽车销售公司开发的一套简单易用的系统,随着科技的发展,设备和管理的现代化,在实际工作中如何提高工作效率成为一个很重要的问题。

而建立管理信息系统是一个很好的解决办法。

汽车如今已经与我们的生活密不可分,而近年来购买轿车也成为一种时尚,对于汽车销售公司来讲,其经营管理的汽车种类繁多,样式各异,客户需求量大,客户要求高,每天的工作量大,一套完整的管理系统对于汽车销售公司来说十分重要,在信息飞速发展的今天,计算机在事务管理方面的应用已经相当广泛,但目前很多汽车销售公司还停留在人工管理的水平上,显然不适应时代的发展,管理人员目前需要一套方便、计算机化的管理信息系统来代替他们繁琐、低效的传统手工管理方式,并最终实现汽车销售管理的全面自动化,鉴于诸多要求,经过三年的学习,我们对计算机方面的知识有了很大的提升,本着理论联系实际的宗旨,通过学校提供的这次课程设计实践的机会并在指导教师的帮助下,历经两周时间,我自行设计一套简单的轿车销售管理系统,在下面几章中我将介绍这套轿车销售管理系统的开发过程和所涉及到的问题。

数据库作业(汽车租赁管理系统)

数据库作业(汽车租赁管理系统)

数据库设计与应用班级:姓名:学号:教师:日期:汽车租赁管理系统的设计一、需求分析一个基本汽车租赁管理系统需要实现如下功能:(1)客户预定车辆功能客户通过网上下订单、打电话预定或直接到前台进行车辆预订,系统根据客户的要求查询符号其要求的现有车辆,并生成订单及相应的租车编号。

同时,还包括记录当前租赁车辆的状态,如车身是否存在刮伤,车辆本身是否有问题,当前油量状态等等。

系统可接收该租赁车辆当前状态的图片并存储,以作为客户租车的记录。

(2)系统保存客户信息及其租车记录为了更好地服务客户并发展长期客户,会保存相关租车客户的信息,如年龄、性别、驾龄、职业等信息,以及客户租车的次数。

客户每次租车的时间、租车的类型、还车的时间等信息均更新记录于系统,以形成企业的客户数据储备,便于以后做数据统计或大数据分析。

(3)取车的管理客户的车辆租赁订单成功后,客户取走车辆,此时要更新当前数据库中记录的车辆状态,当租赁成功则自动生成相应的租赁合同。

(4)车辆归还的管理客户归还车辆时,按照生成的租赁合同,依据合同上的具体内容,如租赁费用、时间、是否有损坏等,并对车辆进行检测,以确定是否产生新的破损,并对产生破损的车辆收取维修费用。

然后对归还后的车辆重新录入数据库,更新借出状态,并将需要维修的车辆做标记。

(5)归还车辆的维修对存在损坏的归还车辆加以维修,科学的评估损坏情况,在结合相应的保险合同的基础之上,由保险公司做相应处理。

二、系统功能模块(1)车辆租赁管理模块车辆租赁管理包括车辆租赁、车辆续租、车辆归还等方面的管理,相应的还包括基于租赁车辆生成订单和合同,并能打印相关手续凭证以及报表等材料。

进一步还包括用户从网上登录系统预订车辆信息。

(2)车辆信息管理模块车辆信息管理包括记录车辆的颜色、车牌、车辆型号、车辆维修状态、车辆的交通违章状态、车辆保养情况、购买日期、租金、租赁状态等车辆的相关信息。

还包括对新购进的车辆进行信息添加,对报废或出售的车辆进行删除等相关方面的信息管理,对车辆的信息进行实时的动态调整。

汽车租赁系统数据库课程设计

汽车租赁系统数据库课程设计

汽车租赁系统数据库课程设计设计目的:本课程设计旨在设计一个汽车租赁系统的数据库,实现对汽车、租赁订单以及用户信息的管理和查询功能。

通过本课程设计,学生将学习到数据库设计的基本原理和方法,掌握数据库设计的流程和技巧,培养对数据库系统的理解和应用能力。

设计要求:1. 设计并实现一个汽车租赁系统的数据库,包括汽车、租赁订单和用户信息的管理和查询功能。

2. 汽车信息应包括汽车编号、品牌、型号、颜色、里程数、租金等属性。

3. 租赁订单信息应包括订单编号、租车时间、还车时间、租车天数、总租金等属性。

4. 用户信息应包括用户编号、姓名、性别、联系方式等属性。

5. 实现对汽车、租赁订单以及用户信息的增加、删除、修改和查询功能。

数据库设计:根据以上设计要求,我们可以设计以下数据库结构:1. 汽车信息表(Car)字段:汽车编号(CarID)、品牌(Brand)、型号(Model)、颜色(Color)、里程数(Mileage)、租金(Rent)2. 租赁订单信息表(Order)字段:订单编号(OrderID)、汽车编号(CarID)、用户编号(UserID)、租车时间(StartTime)、还车时间(EndTime)、租车天数(Days)、总租金(TotalRent)3. 用户信息表(User)字段:用户编号(UserID)、姓名(Name)、性别(Gender)、联系方式(Contact)数据库设计流程:1. 初步分析需求,确定数据库的表和字段。

2. 根据需求,设计出数据库的ER图。

3. 将ER图转化为关系模式图,确定关系表的结构。

4. 设计主键和外键,确定关系表之间的联系。

5. 设计表之间的约束条件,例如唯一性约束、非空约束等。

6. 根据设计完成的表结构,创建数据库并创建相应的表。

7. 编写数据库脚本,实现对汽车、租赁订单和用户信息的增删改查功能。

8. 进行数据的导入和测试,验证数据库设计的正确性和可用性。

具体实现:根据以上数据库设计,我们可以使用关系型数据库管理系统如MySQL或Oracle来实现汽车租赁系统的数据库。

数据库课程设计汽车租赁系统

数据库课程设计汽车租赁系统

数据库课程设计汽车租赁系统1. 引言汽车租赁系统是一种应用广泛的信息管理系统,在汽车租赁行业具有重要的作用。

本文旨在通过数据库课程设计,实现一个可靠且高效的汽车租赁系统。

2. 数据库设计2.1 数据库模型选择在设计汽车租赁系统的数据库时,我们选择了关系型数据库模型,因其具有结构化、严格的数据表定义和强大的数据管理功能。

2.2 数据库实体关系图我们通过实体关系图来表示系统中的实体以及它们之间的关系。

以下是系统中的主要实体以及它们之间的关系:- 用户 (User) 实体:记录用户的基本信息,包括姓名、电话、地址等。

- 汽车 (Car) 实体:记录汽车的相关信息,包括车牌号、品牌、型号、价格等。

- 租赁订单 (Rental Order) 实体:记录租赁订单的详细信息,包括用户、汽车、租赁时间、费用等。

3. 数据库表设计3.1 用户表 (User Table)用户表用于存储用户的基本信息,包括用户ID、姓名、电话、地址等。

以下是用户表的字段设计:- 用户ID (UserID):唯一标识用户的ID。

- 姓名 (Name):用户的姓名。

- 电话 (Phone):用户的联系电话。

- 地址 (Address):用户的联系地址。

3.2 汽车表 (Car Table)汽车表用于存储汽车的相关信息,包括车牌号、品牌、型号、价格等。

以下是汽车表的字段设计:- 车牌号 (License Plate):汽车的唯一标识,用于识别不同的汽车。

- 品牌 (Brand):汽车的品牌。

- 型号 (Model):汽车的型号。

- 价格 (Price):汽车的租赁价格。

3.3 租赁订单表 (Rental Order Table)租赁订单表用于存储租赁订单的详细信息,包括用户、汽车、租赁时间、费用等。

以下是租赁订单表的字段设计:- 订单号 (OrderID):租赁订单的唯一标识。

- 用户ID (UserID):租赁订单对应的用户ID。

- 车牌号 (License Plate):租赁订单对应的汽车车牌号。

数据库设计说明样板

数据库设计说明样板

数据库设计(大作业)题目:汽车租赁管理系统指导教师:姚瑶小组成员姓名:小组成员学号:专业班级:院(系):完成时间:一、数据库需求分析系统简介本系统在网络中现有的汽车租赁管理系统的基础上,主要增加了分店普通员工对汽车租赁的操作,员工确定完订单后不需向经理办公室报送成绩,可以直接的把订单上传到网络上,分店经理也可以方便快速的查询到店内已下的订单,而公司管理人员也不必总呆在公司的办公室,他们都不受时间,位置,空间的限制,只要有上网的条件,在家里就可以完成有关车辆、订单的录入,更新,管理,查询和删除。

本系统将会改变以前汽车租赁管理的状况,提高工作效率。

希望能为员工和公司的工作带来便利。

1.系统数据字典经过对汽车租赁系统业务处理过程的调研,得到系统的数据字典如下所示:a)数据项,以“汽车编号”为例:数据项:汽车编号含义说明:唯一标识每辆汽车别名:学生号类型:字符型长度: 8取值范围:00000000至99999999b)数据结构:学生含义说明:是学籍管理子系统的主体数据结构,定义了一个学生的有关信息组成:学号,姓名,性别,年龄,所在系,年级c)数据流:体检结果说明:学生参加体格检查的最终结果数据流来源:体检数据流去向:批准组成:……平均流量:……高峰期流量:……d)数据存储:学生登记表说明:记录学生的基本情况流入数据流:……流出数据流:……组成:……数据量:每年3000张存取方式:随机存取二、概念模型设计图5.21 学籍管理局部应用的分E-R 图导师班级 学生组成 管理班主任档案材料宿舍住宿归档指导系有参加学会 1N111 NN N11N MN1 具有社会关系1N三、逻辑结构设计学生(学号,姓名,性别,出生日期,所在系,年级,班级号,平均成绩,档案号)宿舍楼(宿舍楼号,性别)住宿(学号,宿舍编号)宿舍(宿舍编号,宿舍楼号,地址,性别,人数)班级(班级号,学生人数)教师(职工号,姓名,性别,职称,班级号,是否为优秀班主任)指导(职工号,学号)课程(课程号,课程名,学分,教室号)选修(学号,课程号,成绩)教科书(书号,书名,价钱)教室(教室编号,地址,容量)讲授(课程号,教师号,书号)档案材料(档案号,……)四、物理设计汽车租赁系统的数据基本表:本系统将数据存储在五个表中,这五个表分别是:车辆表(见表3-1):保存车辆的基本信息,包括车辆的名称,车辆的车牌号,出租价格,所在的分店,是否租出。

汽车租赁系统数据库设计说明

汽车租赁系统数据库设计说明

汽车租赁系统数据库设计说明汽车租赁系统⼀、课程设计的⽬的和意义随着汽车租赁领域的繁荣和飞速发展,租车⾏业的信息量越来越⼤,越来越复杂。

传统的管理⽅式⽆法适应当前迅速发展的市场,计算机和计算机⽹络技术迅速发展和普及,使⽤汽车租赁系统可以使得汽车租赁的效率得到很⼤的提⾼,同时降低经营成本,提⾼利润。

应⽤对数据库原理的理论学习,通过实践熟练掌握数据库创建、基本操作、程序系统的建⽴。

并通过数据库原理软件设计实践,巩固在课堂教学中学习的关于数据库原理的有关知识和数据库系统建⽴的⽅法,熟练掌握对于实际问题,为了建⽴⼀个关系数据库信息管理系统,必须得经过需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施以及数据库运⾏和维护的⼀般过程,为毕业设计打下基础。

⼆、术语定义E-R图:为理解和表⽰问题域的信息⽽建⽴的数据模型,简称E-R图。

具有实体、关系、属性三要素。

数据流图:数据流图是⽤来描绘软件系统逻辑模型的图形⼯具,是描绘信息在系统中流动和处理的情况的。

数据字典:数据字典是对数据流图中出现的所有数据元素、数据流、⽂件、处理的定义的集合。

三、数据库的要求主要功能:本系统包括客户信息管理、车辆信息管理、汽车租赁归还管理、会员类型管理、会员信息管理、保险公司管理、汽车经销商管理等。

具有添加、修改、查询、删除等功能。

⽅便租赁公司的⼯作,提⾼租赁公司的⼯作质量和⼯作效率。

性能要求:租借和归还信息必须及时更新,汽车租赁系统的信息必须⽆差错的存储在主服务器上。

输出要求:数据完整,详实。

输出要求:简捷,快速,实时、准确。

安全与要求:管理员享有对客户信息库及汽车租借信息库和职员信息库的管理与修改。

⼯作⼈员只享有对汽车租赁信息库的部分修改(写⼊与读出)。

完成期限:预计三个⽉⼀、汽车租赁系统需求分析:系统功能需求:1)客户可以通过不同的⽅式(包括、前台、⽹上)预订车辆1、能够保存客户的预订申请单2、能够保存客户的历史记录3、⼯作⼈员可以处理申请4、技术⼈员可以保存对车辆检修的结构2)满⾜以上功能需要以下⼏个模块:1、基本数据维护模块。

租车系统模块与数据库设计

租车系统模块与数据库设计

最近在看《Database modeling & design:logical design》一书,其中有一道练习题是对简单租车系统进行数据库逻辑设计并画出ER图。

这道题给我挺多遐想的,所以我在这里把这些想法记录下来,也试着设计一把。

要进行数据库设计,首先要对需求进行分析。

需求分析一般会需要对业务人员进行随访,收集信息。

我没办法进行随访,就通过自己的遐想来假设需求场景(可能会有错误与遗漏)。

最初想到的:1. 租车公司有多个租车门店,分布于多个不同的地区,并有各自的租车电话。

2. 每个租车门店有多辆汽车可供租赁。

3. 供租赁的车辆需要登记车辆识别代号(VIN),购入时间,所属门店,车辆型号,车辆状态(可租Ready,维修中Repair,租出Inuse,无效Inactive)4. 车辆的租用费用基本由车辆型号和日期类型(平日,周末,还是节假日)来决定。

5. 顾客在订车前需先进行注册,包括姓名,身份证号,驾照号,性别,手机号,固定电话,家庭住址,Email。

6. 注册顾客可通过系统下租车单,预约某车型,若干天的租赁(预约期最远为6个月)。

7. 租车单需记录顾客编号,车辆编号,租赁起始日期,租赁结束日期,提车门店,还车门店,租赁费用,预付款金额,订单状态(输入Entered,提交Booked,预约Reserved,使用中Inuse,交还Returned,取消Cancelled)。

注:暂不提供送车上门和上门取车服务。

对于上述需求,比较明显的需创建的表有:车辆(Table_Car),门店(Table_Store),顾客(Table_Customer),订单(Table_Order)。

除此之外,车辆型号,车辆状态,日期类型和订单状态分别创建成四张枚举表Table_CarCategory,Table_CarStatus,Table_DateType,Table_OrderStatus。

还应有一张租车价位对照表(Table_BasePrice),其中会包含两个外键分别指向Table_CarCategory,Table_DateType。

车辆租赁管理系统数据库课程设计

车辆租赁管理系统数据库课程设计

车辆租赁管理系统数据库课程设计
随着人们生活水平的提高,越来越多的人选择租车出行。

为了更好地管理车辆租赁业务,开发一款车辆租赁管理系统是非常必要的。

本文将介绍一款车辆租赁管理系统的数据库设计。

我们需要设计车辆信息表。

该表包括车辆编号、车辆品牌、车型、颜色、车牌号、车辆状态等字段。

其中,车辆状态字段用于标识车辆是否可租借。

我们需要设计客户信息表。

该表包括客户编号、客户姓名、联系电话、身份证号、驾驶证号等字段。

这些信息将用于客户租车时的身份验证。

接着,我们需要设计租赁订单表。

该表包括订单编号、客户编号、车辆编号、租赁开始时间、租赁结束时间、租赁天数、订单金额等字段。

其中,租赁天数和订单金额字段将根据租赁开始时间、租赁结束时间和车辆租赁价格计算得出。

我们需要设计车辆租赁价格表。

该表包括车辆编号、租赁单价、押金等字段。

车辆租赁价格将根据车型、车辆状态和租赁时间等因素进行计算。

除了以上表格,我们还需要设计一些辅助表格,如车辆品牌表、车型表、车辆颜色表等。

这些表格将用于车辆信息表的数据填充。

车辆租赁管理系统的数据库设计包括车辆信息表、客户信息表、租赁订单表、车辆租赁价格表以及辅助表格等。

这些表格将为车辆租赁管理系统的正常运行提供必要的数据支持。

车辆租赁管理子系统数据库设计

车辆租赁管理子系统数据库设计

理工大学华夏学院课程设计课程名称数据库原理课程设计题目车辆租赁管理子系统数据库设计专业计算机科学与技术班级1101班姓名郭雨露成绩__________________指导教师玉蓉2013 年6 月17 日至2013年6月21日课程设计任务书设计题目:车辆租赁管理子系统数据库设计设计目的:1. 学会分析研究数据对象的特性;2. 学会数据的组织法;3. 选择合适的数据的存储结构以及相应操作,把现实世界中的问题转换为计算机部的表示和处理;4. 提高学生的运用能力、提高数据库设计素质;设计任务:(在规定的时间完成下列任务)1.基础信息设置:包括车辆类型、车辆名称、租赁模式等的设置。

2. 信息管理:车辆信息、司机信息、客户信息的维护和查询。

3. 综合业务管理:对综合业务进行管理和查询,包括汽车预约、出租、续租、催车、还车结算等。

4. 租金统计:可以进行当天租金统计和一定时间段的租金统计。

5. 系统管理:包括系统维护、权限设置、更改密码等。

具体要完成的任务是:A. 编制完成上述问题的数据库设计并能得出正确的运行结果。

B. 采取统一格式:有问题描述、基本要求、测试数据及实现法等组成写出规的课程设计说明书;时间安排6月17日布置课程设计任务;6月18日分配题目后,查阅资料、准备程序;6月19,20 日上机调试程序、书写课程设计报告;6月21日下午提交课程设计报告及相关文档具体要求课程设计报告按统一通用格式书写,具体格式要求请在网络上查阅;每位学生应独立完成各自的任务;指导教师签名:13 年6月15 日教研室主任(或责任教师)签名:13 年6月15日1.系统需求分析1.1背景随着社会经济的发展和人们生活水平的提高,汽车租赁行业也开始飞速的发展,成为一种新兴行,而对于汽车租赁公司来说对于汽车的管理就需要一种汽车租赁管理系统。

汽车租赁管理系统多是针对汽车租赁的业务处理的一种系统,它主要依赖于数据库,管理层面一般包括基本设置、信息管理、业务处理、查询报表、统计租金以及系统管理等模块,优点在于业务处理模块结合了实际,所以对于日常的信息和汽车出租的相关业务都能做到很好的管理。

数据库汽车租赁课程设计

数据库汽车租赁课程设计

数据库汽车租赁课程设计一、课程目标知识目标:1. 让学生理解数据库的基本概念,掌握汽车租赁数据库的结构设计;2. 使学生学会运用SQL语句进行汽车租赁数据库的基本操作,如查询、插入、删除和修改数据;3. 帮助学生了解数据库安全性和事务处理在汽车租赁业务中的应用。

技能目标:1. 培养学生运用数据库软件进行实际项目设计的能力,能独立完成汽车租赁数据库的搭建和简单应用;2. 提高学生利用SQL语句解决实际问题的能力,能针对汽车租赁业务编写相应的查询和操作语句;3. 培养学生分析问题、解决问题的能力,能对汽车租赁数据库进行优化和调试。

情感态度价值观目标:1. 激发学生对数据库技术的兴趣,培养其主动学习的态度;2. 培养学生的团队协作精神,使其在项目实践中学会与他人合作、交流;3. 引导学生认识到数据库技术在生活中的应用,增强其将所学知识应用于实际问题的意识。

课程性质:本课程为信息技术课程,结合实际汽车租赁业务,培养学生运用数据库技术解决问题的能力。

学生特点:学生具备一定的计算机操作基础,对数据库技术有一定了解,但实际应用能力较弱。

教学要求:通过本课程的学习,要求学生掌握数据库的基本知识和技能,能独立完成汽车租赁数据库的设计和应用,提高其解决实际问题的能力。

教学过程中注重实践操作,强调团队协作,培养学生的学习兴趣和实际应用意识。

二、教学内容1. 数据库基本概念:介绍数据库的定义、作用、类型,重点讲解关系型数据库的基本原理和特点。

教材章节:第一章 数据库概述2. 数据库设计:讲解汽车租赁数据库的需求分析、概念结构设计、逻辑结构设计及物理结构设计。

教材章节:第二章 数据库设计3. SQL语句:介绍SQL语句的基本语法,重点讲解查询、插入、删除和修改数据的方法。

教材章节:第三章 SQL语言4. 汽车租赁数据库操作:结合实际案例,让学生动手实践,完成数据库的创建、表的操作、数据的增删改查等任务。

教材章节:第四章 数据库操作5. 数据库安全性与事务处理:讲解数据库的安全机制,如用户权限管理、事务控制等,并结合汽车租赁业务进行分析。

数据库课程设计报告(汽车租赁管理系统)

数据库课程设计报告(汽车租赁管理系统)

数据库课程设计报告(汽车租赁管理系统)一.系统简介本系统为汽车租赁系统,采用b/s实现。

可以实现不同权限的浏览和管理。

管理员可以用作汽车出租公司对汽车出租事务的管理,包含追加、删掉车辆记录,追加、删掉用户记录,追加、删掉出租信息记录,追加、删掉管理人员记录以及会员设置,客户则可以下载车辆信息和个人的租车信息。

主要技术:jsp运行环境:winowsos+apachetomcat5.5+sqlserver2021+jdk1.6开发软件:myeclipse6.0.1开源软件:jxl.jar,sqljdbc4.jar二.数据库设计1.需求分析因为客户就可以亲自至汽车出租公司回去登记注册或出租车辆,因而,两者权限分配如下:汽车公司方面:能够对车辆,租赁信息和用户信息进行管理。

超级管理员还可以对公司内部人员的信息进行管理客户方面:就可以下载车辆信息和个人用户信息及个人出租信息。

数据流图如下:管理人员信息文件管理员新增车辆个人信息车辆车辆信息文车辆信息新增管理员新增客户用户信息文件新增交易个人信息客户内部人员交易信息文件2.概念设计er图如下右图:工号用户名类型密码管理用户n管理员证件号用户名管理车辆m密码客户信誉度1m 会员类型nn租用时间单价租用车辆车辆起租时间状态编号状态客户编号编号类型押金起租时间经手人员车辆编返回金额租用时间3.逻辑设计建表语句如下:用户表中://后为各字段意义声明createtableuserinfo(pidvarchar(8)primarykey,//用户证件号usernamevarchar(8),//用户名isvipint,//用户类型,与否为会员xingyuint,//信誉度,满分100。

passwordvarchar(8)//用户登入密码);管理员表:createtablemanager(widvarchar(8)primarykey,//管理员工号typeint,//类型,超级管理员(部门经理等)和普通管理员usernamevarchar(8),//管理员用户名passwordvarchar(8)//管理员密码);车辆表中:createtabletaxi(tidvarchar(8)primarykey,//车辆编号typevarchar(8),//车辆类型statevarchar(8),//车辆状态,与否经适房widvarchar(8),//yearint,//起租年月日monthint,dayint,timeint,detailinfotext,//车辆详细信息payint//承租单价);租车信息表createtablerentinfo(ridintidentity(1,1)primarykey,//交易编号widvarchar(8),//经手人员pidvarchar(8),//客户证件号tidvarchar(8),//车辆号码yajinint,//押金backmoneyint,//返还金额payint,//单价brokenvarchar(8),//毁坏情况outyearint,//完结交易时间outmonthint,outdayint,timeint,//实际使用时间statevarchar(8)//交易状态);--设置外键begintransactionaltertabledbo.rentinfoaddconstraintfk_rentinfo_tidforeignkey(tid)referencesdbo.taxi([tid])altertabledbo.rentinfoaddconstraintfk_rentinfo_pidforeignkey(pid)erinfo([pid])altertabledbo.rentinfoaddconstraintfk_rentinfo_widforeignkey(wid)referencesdbo.manager([wid])4.数据库创建与备份,恢复正常在sqlserver2021建立一个数据库,名称为hello,执行以上建表语句即可。

汽车租赁数据库设计

汽车租赁数据库设计

学号:课程设计题目汽车租赁数据库设计学院计算机专业班级姓名指导教师唐祖锴2011 年 1 月10 日课程设计任务书学生姓名:赵中祥专业班级:指导教师:工作单位:计算机学院题目:汽车租赁数据库设计初始条件:中兴公司是一家长途汽车出租公司,需要处理如下信息:●租赁业务(发票号、日期、牌照号、地点、往返里程、行驶时间、客户号、司机号)●汽车(注册号码、汽车型号、购入日期、价格、维修日期、运行功利、运行小时、租金率)●司机(司机号、姓名、参加工作年月、基本工资)●客户(客户号、客户姓名、客户单位、客户电话、客户地址、邮编)公司需要时刻掌握汽车和司机的状态,尽量满足客户的租车需求。

要求完成的主要任务:1.根据上述的初始条件,进行调查分析。

设计一个汽车租赁数据库,DBMS可选Ms SQL Server、Access、VFP等。

2.完成课程设计说明书,其格式遵守学校今年的新规定。

主要内容包括:需求分析,概念设计,逻辑设计,物理实现等。

3.基于该数据库,最好实现一个或多个应用程序(自己确定功能),程序设计语言(工具)任选。

这一项是选作,不作硬性要求。

时间安排:本学期第18周:1.消化资料、系统调查1天2.系统分析1天3.总体设计,实施计划2天4.撰写报告1天指导教师签名:年月日系主任(或责任教师)签名:年月日汽车租赁数据库设计一.摘要伴随着社会的发展,需要记录处理的事物也越来越多。

这就使得数据库在各个领域都得到了极大地应用。

同样,汽车租赁行业要想向现代化发展,必然需要采用一种现代化的管理方式。

如此便可以扩大行业的服务对象范围及领域,建立与现代化汽车社会相适应的专业化、网络化汽车租赁特许经营服务体系,使汽车租凭在中国有序地发展起来。

如何找到一种现代化的管理方式呢?我们可以建立一个系统,使得汽车租赁公司或企业可以在这个系统中管理整个公司不同店面的物流、资金流和人事流。

汽车租赁数据库系统是一款专用于汽车租赁行业的信息化管理软件。

Java+mysql汽车租赁系统设计与实现

Java+mysql汽车租赁系统设计与实现

Java+mysql汽车租赁系统设计与实现⽬录1.需求分析1.1管理员需求管理员这边要能增删改查车辆信息,可以显⽰可租⽤的车辆和所有车辆信息,并且可以按照租⾦进⾏升序或者降序排列,对车型可以进⾏查询;车不够了还要及时向供应商进货,这⾥就涉及到供应商信息,管理员要能对供应商信息进⾏增删改查,也要能查看,修改,删除⽤户信息,要添加⽤户信息的话只能由⽤户通过注册来添加,还能通过⽤户姓名查询⽤户信息。

管理员还能查看所有购买车辆的信息;查看所有⽤户租⽤车辆的信息;按照车型分类对租⽤次数进⾏统计。

1.2⽤户需求⽤户⾸先得注册;其次会想到租赁,⽤户租车,需要看到有哪些车,再租车,租车会显⽰租车时间,要租的车,交的押⾦,租了后还要归还,还要能查看⾃⼰的订单。

2.概要设计2.1框架图图2.1.1 框架图图2.1.2 关系图所⽤模块:1)注册模块:调⽤register.java的register⽅法⾥⾯⼜调⽤了Find.java的FindUserByName⽅法2)登陆模块:分为管理员登陆和⽤户登陆,管理员登陆是确定的账号和密码,账号:root,密码:leilei.⽤户登陆调⽤了check⽅法,check⽅法⾥再调⽤Find.java的FindUserById⽅法3)添加模块:(车辆,供应商)调⽤Find.java⾥的⽅法,分别为:Find.FindCarById(),FindSupplier()4)删除模块:(⽤户,车辆,供应商)调⽤Delete.java⾥的⽅法,分别为:1.DeleteUser();2.DeleteCar();3.DeleteSupplier()5)查询模块:(⽤户,车辆,供应商)调⽤Find.java⾥的⽅法,分别为:1.FindUserById();2.FindCarById();3.FindSupplier()6)修改模块:(⽤户,车辆,供应商)调⽤Update.java⾥的⽅法,分别为:1.UpdateUser();2.UpdateCar();3.UpdateSupplier()7)租车模块:调⽤Add.java的AddRent()8)还车模块:调⽤Update.java的UpdateRent()⽅法9)管理员操作:1):按租⾦升降序显⽰可租⽤车辆:调⽤Show.java的showAdmin_car_can⽅法2):按租⾦升降序显⽰所有车辆:调⽤Show.java的showAdmin_car⽅法3):查看⽤户资料:调⽤Show.java的ShowUser()⽅法4):查看供应商信息:调⽤Show.java的Showsupplier()⽅法5):查看购车信息:调⽤Show.java的Showbuy()⽅法6):查看租车信息:调⽤Show.java的Showrent()⽅法7):通过车型查询车辆信息在⾸页:调⽤Find.java的FindCarByModel()⽅法8):通过⽤户姓名查询⽤户信息:调⽤Find.java的FindUserByName()⽅法10)⽤户操作:1)按租⾦升降序显⽰所有车辆:调⽤Show.java的showUser_car()⽅法2)按租⾦升降序显⽰可租⽤车辆:调⽤Show.java的showUser_car_can()⽅法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

长沙学院课程设计说明书题目汽车租赁管理系统学院计算机工程与应用数学专业(班级)姓名学号指导教师起止日期课程设计任务书课程名称:数据库系统原理课程设计设计题目:汽车租赁管理系统已知技术参数和设计要求:1、某汽车租赁公司汽车租赁管理系统需要如下信息:工作人员信息包括:工号、姓名、性别、联系电话等。

客户信息包括:身份证号、姓名、性别、所在单位、联系电话等。

车辆信息包括:车牌号、品牌、颜色、座位数、日租价格、日租超公里价格、月租价格、租赁状态、购入日期等。

车辆类别信息包括:分类号,库存数。

其业务规则描述如下:一个工作人员可以对很多辆车辆进行管理,一辆车也可以被多个工作人员管理;一辆车只能属于一种车辆类别,而一种车辆类别可以包含多辆车;一个客户可以租多辆不同的车。

2、系统功能的基本要求:可以实现对车辆、租赁客户的查询,可以查询汽车、客户租赁历史记录。

可以按类别统计汽车的租赁金额和剩余的库存数,可以统计某一年龄客户群体对某类汽车的租赁喜好,能模拟客户对汽车的租借、归还业务。

各阶段具体要求:1.需求分析阶段●定义数据项的含义和取值●定义目标系统的数据流2.概念结构设计阶段●画出实体模型E-R图3.逻辑结构设计阶段●将实体模型转化为关系模型●给出每个关系的主关键字和函数依赖集●分析你所设计的关系数据库模式是否属于3NF4.物理设计阶段●确定所有字段的名称、类型、宽度、小数位数及完整性约束●确定数据库及表的名称及其组成●确定索引文件和索引关键字5.数据库安全及维护设计阶段●设计一个适合的数据库安全策略(用户身份认证、访问权限、视图)●为了实现复杂的数据完整性约束,设计适当的触发器●设计一个适合的数据库备份策略6、实施阶段●要求所有操作必须在查询分析器中用SQL语句或系统存储过程完成。

设计工作量:(1)软件设计:完成问题陈述中所提到的所有需求功能。

(2)论文:要求撰写不少于3000个文字的文档,详细说明各阶段具体要求。

工作计划:安排两周时间进行课程设计,软件开发步骤如下,第一周完成1~4,第二周完成5~8,论文同步进行;1) 选定题目2) 需求分析3) 概念结构设计4) 逻辑结构设计5) 物理设计6) 数据库安全及维护设计7) 数据库上机实现8) 答辩4课时:讲授32课时:上机、调试。

计算机学院机房4课时:答辩。

计算机系机房。

注意事项⏹提交文档➢长沙学院课程设计任务书(每学生1份)➢长沙学院课程设计论文(每学生1份)➢长沙学院课程设计鉴定表(每学生1份)目录1.需求分析阶段 (2)2.概念结构设计阶段 (2)3.逻辑结构设计阶段 (2)4.物理设计阶段 (2)5.数据库安全及维护设计阶段 (2)6、实施阶段 (2)1.引言 (5)1.1编写目的 (6)1.2参考资料 (6)2.需求规约 (6)2.1系统业务描述 (6)2.2功能需求分析 (7)3. 数据库环境说明 (11)4.数据库的命名规则 (11)4.1数据库对象命名规则 (11)4.2数据项编码规则 (11)5.逻辑设计 (12)5.1创建与数据库相关的ER图、表及关系图 (12)5.2创建数据库系统的关系模型 (14)6. 物理设计 (14)6.1表汇总 (14)6.2表的详细情况 (15)6.3视图的设计 (18)6.3.1创建一个可以查询当前可租用车辆及价格与库存数的视图 (18)6.4存储过程的设计 (19)6.4.1查询当前车辆信息状态 (19)6.4.2查询当前可租用车辆及价格与库存数 (19)6.4.3客户租车 (20)6.4.4还车 (21)6.4.5新建车辆类别信息 (21)6.4.6新增车辆 (22)6.4.7删除车辆 (24)6.4.8注册新用户 (25)6.4.9删除用户 (26)6.4.10注册新工作人员 (26)6.4.11删除工作人员 (27)6.4.12工作人员查看所有订单 (28)6.4.13用户查看自己订单 (29)6.4.14工作人员查询客户信息 (29)6.5触发器的设计 (30)6.5.1(租车)创建触发器,当订单表插入一条新订单时,使对应车辆的库存数-1 (30)6.5.2(租车时)创建触发器,当订单表中插入一条记录时,使对应车辆的状态改为已租状态 (31)6.5.3(还车时)创建触发器,当租车表更新一条数据时,使对应车辆在汽车表里面的状态修改为未租状态 (32)6.5.4(还车时)创建触发器,当租车表更新一条数据时,使对应车辆的库存数+1 (33)6.5.5(还车时)创建触发器,当租车表更新一条记录时,计算客户的租车费用 (34)6.5.6 (新增车辆)创建触发器,当新增车辆时,对应库存数+1 (35)6.5.7(删除车辆)创建触发器,当删除一辆车后,其对应车库数-1 (36)7. 安全性设计 (37)7.1防止用户直接操作数据库的方法 (37)7.2用户帐号密码的加密方法 (37)7.3角色与权限 (38)8. 数据库管理与维护说明 (38)9. 实验总结 (40)10. 附录 (40)1.引言1.1 编写目的本文档是汽车租赁系统设计文档的组成部分,编写数据库设计文档的目的是:明确数据库的表名、字段名等数据信息,用来指导后期的数据库脚本的开发。

本文档的读者对象是需求人员、系统设计人员、开发人员、测试人员。

1.2参考资料2.需求规约2.1 系统业务描述(1)数据库创建背景该数据库建立于sq l server 2008 r2,环境为windows7系统名称:汽车租赁管理系统。

系统的开发者:小组成员系统的用户:租车客户以及租赁公司的工作人员。

(2)数据库系统要完成的业务流程及工作内容首先完成需求分析,根据需求关系画出ER-图,并写出关系模式。

根据ER图用SQL server创建与数据库相关的表,视图,存储过程以及触发器。

系统的功能要求基本实现对车辆,租赁客户的查询。

可以查询客户租赁的历史记录。

可以查看汽车价格、库存,可以查看汽车的租借、归还、以及费用。

图2.1 总体框架图(3)揭示该数据库的资源需求和设计约束2.2 功能需求分析表2.1表2.3表2.6表2.8表2.10表2.12表2.133. 数据库环境说明4.数据库的命名规则4.1 数据库对象命名规则4.2 数据项编码规则表4.2 数据项编码规则表5.逻辑设计5.1创建与数据库相关的ER图、表及关系图图5.1 ER图图5.2 关系图5.2创建数据库系统的关系模型1.工作人员(工号、密码、姓名、性别、联系电话)2.客户信息(客户编号、身份证号、密码、姓名、性别、所在单位、联系电话)3.车辆信息(车牌号、座位数、颜色、租赁状态、购入日期、分类号)4车辆类别(分类号、车型、库存数、日租价格、日租超公里价格、月租价格、月租超公里价格)5.租赁(订单号、客户编号、车牌号、租赁日期、归还日期、租赁里程数、租赁费用)6. 物理设计6.1表汇总表6.1 汇总表6.2表的详细情况表6.2[car]:[车辆信息表]表6.5[worker]:[工作人员信息表]6.3视图的设计6.3.1创建一个可以查询当前可租用车辆及价格与库存数的视图create view vi_usecarasselect carno'车牌号',carcolor'颜色',carseat'座位数',carclassname'品牌',carsum'库存数',cardayprice'日租价格',carbeyonddayprice'日租超出价格' ,carmonthprice '月租价格',carbeyondmonthprice'月租超出价格'from car,carclasswhere carstate = '未租'and car.carclassno=carclass.carclassno ;图6.1 视图的创建6.4存储过程的设计6.4.1查询当前车辆信息状态create procedure proc_carasselect carno'车牌号',carcolor'颜色',cardate'购入日期',carseat'座位数',carstate'当前状态'from car;图6.2 查询车辆信息6.4.2查询当前可租用车辆及价格与库存数create procedure proc_usecarasselect carno'车牌号',carcolor'颜色',carseat'座位数',carclassname'品牌',carsum'库存数',cardayprice'日租价格',carbeyonddayprice'日租超出价格' ,carmonthprice '月租价格',carbeyondmonthprice'月租超出价格'from car,carclasswhere carstate = '未租'and car.carclassno=carclass.carclassno ;图6.3查询可租用车辆信息6.4.3客户租车create procedure proc_rentcar(@customerno varchar(10),@carno varchar(10),@rentdate date)asif (select car.carstate from car where(car.carno = @carno))='未租' begininsertinto rent(rentdate,rentbackdate,customerno,carno,milage,cost) values(@rentdate, @rentdate,@customerno,@carno,0,'0');print '租车成功';endelsebeginprint'当前车辆已被租用或不存在!请更换车辆'end图6.4 租车操作6.4.4还车create procedure proc_returncar(@rentno varchar(10),@returndate date ,@milage int)asbeginupdate rentsetage=@milage,rent.rentbackdate=@returndatewhere(rent.rentno=@rentno);print '还车成功';end图6.5 还车操作6.4.5新建车辆类别信息create procedure add_carclass(@workno varchar(10),@workpassword varchar(10),@carclassname varchar(10),@cardayprice varchar(10) ,@carbeyonddayprice varchar(10),@carmonthprice varchar(10) ,@carbeyondmonthprice varchar(10))asif @workpassword=(select workpassword from worker where (workno = @workno)) beginprint '验证正确'insertinto carclassvalues(@carclassno,@carclassname,0 ,@cardayprice,@carbeyonddayprice,@carmonth price,@carbeyondmonthprice)end图6.6 新建车辆类别操作图6.7 新建成功6.4.6新增车辆create procedure add_car(@workno varchar(10),@carno varchar(10),@carcolor varchar(10),@cardate varchar(10),@carseat varchar(10),@carclassno varchar(10))asif @workpassword=(select workpassword from worker where (workno = @workno)) beginprint '身份验证正确!'insertinto carvalues(@carno,@carcolor,@cardate,@carseat,@carclassno,'未租')print '新增车辆成功!'endelsebeginprint '账号或密码错误!'end图6.8 新增车辆操作图6.9 新增车辆成功6.4.7删除车辆create procedure del_car(@workno varchar(10),@workpassword varchar(10),@carno varchar(10))asif @workpassword=(select workpassword from worker where (workno = @workno)) beginprint '身份验证正确!'deletefrom carwhere carno=@carnoprint '车辆删除成功!'endelsebeginprint '账号或密码错误'end图6.10 删除车辆操作图6.11 删除车辆成功6.4.8注册新用户create procedure add_customer(@customerno varchar(10),@customterid varchar(20),@customername varchar(10),@customersex varchar(10),@customeraddress varchar(10),@customerphone varchar(20))asinsertinto customervalues(@customerno,@customterid,@customername,@customersex,@customeraddress,@ customerphone)print '注册成功!'图6.12 新用户注册操作图6.13 注册成功6.4.9删除用户create procedure del_customer(@customerno varchar(10))asdeletefrom customerwhere(customerno=@customerno)图6.14 删除用户操作图6.15 删除用户成功6.4.10注册新工作人员create procedure add_worker(@workno varchar(10),@workpassword varchar(10),@workname varchar(10),@worksex varchar(10),@workphone varchar(20))asinsertinto workervalues(@workno,@workpassword,@workname,@worksex,@workphone) print '注册成功'图6.16 注册工作人员图6.17 注册成功6.4.11删除工作人员create procedure del_worker(@workno varchar(10))asdeletefrom workerwhere (workno=@workno)图6.18 删除工作人员图6.19 删除成功6.4.12工作人员查看所有订单create procedure check_rentasselect *from rent图6.20 订单记录表图6.21 查询成功6.4.13用户查看自己订单create procedure check_carrent(@customerno varchar(10))asselect *from rentwhere(customerno = @customerno)图6.22 查询订单6.4.14工作人员查询客户信息create procedure check_customer(@workno varchar(10),@workpassword varchar(10),@customerno varchar(10))asif @workpassword=(select workpassword from worker where (workno = @workno))beginprint '验证正确'select *from customerwhere (customerno = @customerno)endelsebeginprint '账号或密码错误'end图6.23 客户信息表图6.24 查询成功6.5触发器的设计6.5.1(租车)创建触发器,当订单表插入一条新订单时,使对应车辆的库存数-1create trigger sub_carsumon rentafter insertasupdate carclassset carclass.carsum=carclass.carsum-1where carclassno in(select carclassno from car where carno in(select carno from inserted) )图6.25 租车操作图6.26 触发器更新库存数6.5.2(租车时)创建触发器,当订单表中插入一条记录时,使对应车辆的状态改为已租状态create trigger alter_carstateon rentafter insertasupdate carset carstate = '已租'where carno in(select carnofrom inserted)图6.27 租车操作图6.28 触发器改变租车状态6.5.3(还车时)创建触发器,当租车表更新一条数据时,使对应车辆在汽车表里面的状态修改为未租状态create trigger alter_carstate2on rentafter updateasupdate carset carstate = '未租'where carno in(select carnofrom inserted)图6.29 还车操作图6.30 触发器改变租车状态6.5.4(还车时)创建触发器,当租车表更新一条数据时,使对应车辆的库存数+1create trigger add_carsumon rentafter updateasupdate carclassset carclass.carsum=carsum+1where carclassno in(select carclassno from car where carno in(select carno from inserted))图6.31 换车操作图6.32 触发器更新库存数6.5.5(还车时)创建触发器,当租车表更新一条记录时,计算客户的租车费用create trigger calculate_coston rentafter updateasdeclare @price1 varchar(10),@price2 varchar(10)if ((select milage from rent where rentno in(select rentno from inserted))> 200)beginselect @price2=(select carbeyonddayprice from carclass where carclassno in (select carclassno from car where carno in(select carno from inserted)) )update rentset cost=@price2*(DATEDIFF(DAY,rent.rentdate,rent.rentbackdate)+1)where rentno in (select rentno from inserted)endelsebeginselect @price1=(select cardayprice from carclass where carclassno in (select carclassno from car where carno in(select carno from inserted)) )update rentset cost=@price1*(DATEDIFF(DAY,rent.rentdate,rent.rentbackdate)+1) where rentno in (select rentno from inserted)end图6.33 还车操作图6.34 触发器计算价格6.5.6 (新增车辆)创建触发器,当新增车辆时,对应库存数+1create trigger add_carsum1on carafter insertas1update carclassset carclass.carsum=carsum+1where carclassno in (select carclassno from inserted)图6.35 新增车辆图6.36 触发器更新库存数6.5.7(删除车辆)创建触发器,当删除一辆车后,其对应车库数-1create trigger sub_carsum1on carafter deleteasupdate carclassset carsum=carsum-1where carclassno in(select carclassno from deleted)exec del_car '1','123456','湘G11111'图6.37 删除车辆图6.38 触发器更新库存数7. 安全性设计7.1防止用户直接操作数据库的方法示例代码exec add_car '1','123456','湘G11111','黑色','2018-6-10','5','2'在操作前对工作人员的账号和密码进行验证,验证通过后才可操作数据库if @workpassword=(select workpassword from worker where (workno = @workno)) beginprint '身份验证正确!'insertinto carvalues(@carno,@carcolor,@cardate,@carseat,@carclassno,'未租')print '新增车辆成功!'endelsebeginprint '账号或密码错误!'end7.2用户帐号密码的加密方法在SQl server下自带的函数hashbytes() ,此函数可以用来计算一个字符串的 MD5使用方法如下:--获取123456的MD5加密串select hashbytes('MD5', '123456') ;7.3 角色与权限关键代码worker拥有所有权限grant all on car to worker with grant optiongrant all on carclass to worker with grant optiongrant all on rent to worker with grant optiongrant all on worker to worker with grant optiongrant all on customers to worker with grant option用户拥有查看customer和car的权限grant select on car to customersgrant select,update on customer to customersgrant select on carclass to customers8. 数据库管理与维护说明要保证数据库的安全和可靠就需要对其日常管理进行全面的掌控和及时的维护,以此获得更加安全的数据库环境。

相关文档
最新文档