汽车租赁管理系统.docx

上传人:b****7 文档编号:24970220 上传时间:2023-06-03 格式:DOCX 页数:50 大小:153.32KB
下载 相关 举报
汽车租赁管理系统.docx_第1页
第1页 / 共50页
汽车租赁管理系统.docx_第2页
第2页 / 共50页
汽车租赁管理系统.docx_第3页
第3页 / 共50页
汽车租赁管理系统.docx_第4页
第4页 / 共50页
汽车租赁管理系统.docx_第5页
第5页 / 共50页
点击查看更多>>
下载资源
资源描述

汽车租赁管理系统.docx

《汽车租赁管理系统.docx》由会员分享,可在线阅读,更多相关《汽车租赁管理系统.docx(50页珍藏版)》请在冰豆网上搜索。

汽车租赁管理系统.docx

汽车租赁管理系统

 

汽车租赁管理系统

 

课程设计说明书

题目

汽车租赁治理系统

学院

计数院

专业(班级)

软件工程

姓名

学号

指导教师

杨刚、潘怡

起止日期

2021/5/29-2021/6/29

课程设计任务书

课程名称:

数据库系统原理课程设计

设计题目:

汽车租赁治理系统。

技术参数和设计要求:

题目:

汽车租赁治理系统

1、某汽车租赁公司汽车租赁治理系统需要如下信息:

工作人员信息包括:

工号、姓名、性别、联系等。

客户信息包括:

身份证号、姓名、性别、所在单位、联系等。

车辆信息包括:

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

车辆类别信息包括:

分类号,库存数。

其业务规那么描述如下:

一个工作人员能够对专门多辆车辆进行治理,一辆车也能够被多个工作人员治理;一辆车只能属于一种车辆类别,而一种车辆类别能够包含多辆车;一个客户能够租多辆不同的车。

2、系统功能的差不多要求:

能够实现对车辆、租赁客户的查询,能够查询汽车、客户租赁历史记录。

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

各时期具体要求:

1、需求分析时期

●定义数据项的含义和取值

●定义目标系统的数据流

2、概念结构设计时期

●画出实体模型E-R图

3、逻辑结构设计时期

●将实体模型转化为关系模型

●给出每个关系的主关键字和函数依靠集

●分析你所设计的关系数据库模式是否属于3NF

4、物理设计时期

●确定所有字段的名称、类型、宽度、小数位数及完整性约束

●确定数据库及表的名称及其组成

●确定索引文件和索引关键字

5、数据库安全及爱护设计时期

●设计一个适合的数据库安全策略〔用户身份认证、访问权限、视图〕

●为了实现复杂的数据完整性约束,设计适当的触发器

●设计一个适合的数据库备份策略

6、实施时期

●要求所有操作必须在查询分析器中用SQL语句或系统储备过程完成。

设计工作量:

〔1〕软件设计:

完成问题陈述中所提到的所有需求功能。

〔2〕论文:

要求撰写许多于3000个文字的电子文档,详细说明各时期具体要求。

工作打算:

安排两周时刻进行课程设计,软件开发步骤如下,第一周完成1~4,第二周完成5~8,论文同步进行;

1)选定题目

2)需求分析

3)概念结构设计

4)逻辑结构设计

5)物理设计

6)数据库安全及爱护设计

7)数据库上机实现

8)答辩

打算时刻

指导老师

班级

15~16周

潘怡、杨刚

15软件1班

15~16周

潘怡、杨刚

15软件2班

15~16周

卓琳、田清龙

15软件3班

15~16周

卓琳、田清龙

15软件4班

15~16周

张肖霞、马丽

15软件5班

15~16周

张肖霞、马丽

15软件6班

本卷须知

⏹提交电子文档

Ø长沙学院课程设计任务书〔每学生1份〕

Ø长沙学院课程设计论文〔每学生1份〕

Ø长沙学院课程设计鉴定表〔每学生1份〕

指导教师签名:

      日期:

    

教研室主任签名:

       日期:

        

院长签名:

         日期:

        

长沙学院课程设计鉴定表

姓名

学号

专业

班级

设计题目

指导教师

指导教师意见:

 

评定等级:

教师签名:

日期:

答辩小组意见:

 

评定等级:

     答辩小组长签名:

     日期:

    

教研室意见:

 

教研室主任签名:

日期:

 

学院意见:

 

院长签名:

        日期:

     

说明

课程设计成绩分〝优秀〞、〝良好〞、〝及格〞、〝不及格〞四类;

 

一、引言

1.1编写目的

本文档是汽车租赁系统设计文档的组成部分,编写数据库设计文档的目的是:

明确数据库的表名、字段名等数据信息,用来指导后期的数据库脚本的开发。

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

1.2参考资料

资料名称

作者

文件编号、版本

«数据库系统概论»

王珊、萨师煊

2006年5月第4版

二、需求规约

2.1业务描述

2.1.1数据库创建背景

该数据库建立于sqlserver2020r2,环境为windows7 

系统名称:

汽车租赁治理系统。

 系统的开发者:

小组成员 

系统的用户:

租车客户以及租赁公司的工作人员。

2.1.2数据库系统要完成的业务流程及工作内容

第一完成需求分析,依照需求关系画出ER-图,并写出关系模式。

依照ER图用SQLserver创建与数据库相关的表,视图,储备过程以及触发器。

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

能够查询客户租赁的历史记录。

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

2.1.3揭示该数据库的资源需求和设计约束

2.2需求分析

2.2.1功能需求 

(1)车辆治理

  要紧是表示治理员能够对租赁公司现有的汽车的具体信息进行治理,修改汽车差不多信息,包括车牌号、汽车颜色、购入日期、类别及租赁状态等,也能够添加新购进来的汽车差不多信息,以便更快的投入租赁市场,方便客户了解最新车辆信息以及做出更好的租赁选择。

(2)业务治理 

要紧提供对汽车的日常业务进行治理,如查询指定汽车的租赁状态,被租赁的车的车牌号,所

生成的订单号,所租车的种类,租车时刻、归还时刻及租赁金额,查询租车客户的差不多信息,以便于治理员更好的治理车辆系统,保证系统安全性。

三、数据库环境说明

数据库实例

数据库系统

数据库部署环境

数据库设计工具

数据库存放位置

说明

汽车租赁

Sqlserver2020r2

Windows7

Sqlserver2020r2

Microsoftofficevisio2003

E:

\sql\SQL

实例用途说明

四、数据库的命名规那么

3.1数据库对象命名规那么

数据库对象

命名规那么

备注

英文命名

例如:

car汽车表

储备过程

proc_功能描述字符串

例如:

proc_car汽车查询的储备过程

触发器

功能命名

例如:

delete_car删除汽车

视图

View_功能描述字符串

例如:

view_rent查看租借信息表

3.2数据项编码规那么

数据项

命名规那么

数据类型

长度范畴

备注

汽车编号

所在地+字母号+数字

Varchar类型

10位

租赁状态

Trueorfalse

Bit类型

订单号

流水号

Varchar类型

10位

客户号

字母+数字编号

Varchar类型

10位

工作人员编号

数字

Varchar类型

10位

汽车类型号

字母

Varchar类型

10位

五、逻辑设计

5.1创建与数据库相关的那部分实体关系图〔ERD〕、表及关系图

表customers

CusNoPY

Varchar(10)NOT Null

CusName

Varchar(10) NOT Null

CusSex

Varchar

(2)    NOT Null

CusAge

Varchar(4)  NOT Null

CusPhone

Varchar(10)  

CusCompany

Varchar(10)   NOT Null

CusIdentity

Varchar(10)   NOT Null

表rent

RecordPY

Verchar(10)

Notnull

RentDate

date

Notnull

ReturnDate

date

Notnull

CusNo

Verchar(10)

Notnull

CarNo

Verchar(10)

Notnull

Recordcost

Verchar(100

NotNull

表car

CarNoPY

Verchar(10)

Notnull

CarColor

Verchar(10)

Notnull

CarDate

date

Notnull

CarClassNoFY

Verchar(10)

Notnull

CarState

bit

Notnull

表carclass

CarClassNoPY

Verchar(10)

Notnull

CarClassCnt

Varchar〔10〕

Notnull

CarClassDayPrice

Verchar(10)

Notnull

CarClassDayPriceExceed

Verchar(100

Notnull

CarClassMonthPrice

Verchar(10)

Notnull

CarClassSeat

Verchar(10)

Notnull

表worker

WorkNoPY

Verchar(10)

Notnull

WorkPassWord

Verchar(10)

Notnull

WorkName

Verchar(10)

Notnull

WorkSex

Verchar

(2)

Notnull

WorkPhone

Verchar(10)

表manage

WorkNoPY

Verchar(10)

Notnull

CarNoPY

Verchar(10)

Notnull

5.2创建数据库系统的关系模型

1.工作人员〔工号、密码、姓名、性别、联系〕

2.客户信息〔身份证号、密码、姓名、性别、所在单位、联系〕、

3.车辆信息〔车牌号、品牌、座位数、颜色、租赁状态、购入日期、分类号〕 

4车辆类别〔分类号、库存数、日租价格、日租超公里价格、月租价格、月租超公里价格、品牌〕

5.治理〔工号、车牌号〕备注:

〔工号和车牌号共同作为治理表的主键,同时也是外键〕 

6.租赁〔订单号、身份证号、车牌号、租赁日期、归还日期、租赁总金额〕

六、物理设计

6.1表汇总

表名

功能说明

car

储备车辆信息

carclass

储备车辆类别的信息

rent

储备租赁的信息

customers

储备客户信息

worker

储备工作人员的信息

manage

储备工作人员和车辆之间的关系

6.1.1表[car]:

[车辆信息表]

表名

car

数据库用户

Car_rent

主键

CarNo

索引字段

CarClassNo

序号

字段名称

数据类型

承诺为空Y/N

唯独

Y/N

区别度

默认值

约束条件/说明

1

CarNo

varchar(10)

N

Y

主键

2

CarClassNo

varchar(10)

N

N

外键

3

CarState

bit

(2)

N

N

00

租赁状态

4

Cardate

date

N

N

购入日期

5

CarColor

varchar(10)

N

N

汽车颜色

sql脚本

DROPTABLEIFEXISTS`car`;

CREATETABLE`car`(

`CarNo`varchar(10)NOTNULL,

`CarColor`varchar(10)NOTNULL,

`CarDate`dateNOTNULL,

`CarSta`bit(10)NOTNULL,

`CarClassNo`varchar(10)NOTNULL,

PRIMARYKEY(`CarNo`),

KEY`CarClassNo`(`CarClassNo`),

CONSTRAINT`CarClassNo`FOREIGNKEY(`CarClassNo`)REFERENCES`carclass`(`CarClassNo`))

6.1.2表[carclass]:

[车辆类别表]

表名

carclass

数据库用户

Car_rent

主键

CarClassNo

序号

字段名称

数据类型

承诺为空Y/N

唯独

Y/N

区别度

默认值

约束条件/说明

1

CarClassNo

varchar(10)

N

Y

主键

2

CarClassCnt

varchar(10)

N

N

库存数

3

CarClassSeat

bit

(2)

N

N

座位数

4

CarClassDayPrice2

date

N

N

日租价格

5

CarClassDayPrice1

varchar(10)

N

N

日租超公里价格

6

CarClassMonthPrice

varchar(10)

N

N

月租价格

7

CarClassBrand

varchar(10)

N

N

车辆品牌

sql脚本

DROPTABLEIFEXISTS`carclass`;

CREATETABLE`carclass`(

`CarClassNo`varchar(10)NOTNULL,

`CarClassCnt`varchar(10)NOTNULL,

`CarClassDayPrice1`varchar(10)NOTNULL,

`CarClassDayPrice2`varchar(10)NOTNULL,

`CarClassMonthPrice`varchar(10)NOTNULL,

`CarClassBrand`varchar(10)NOTNULL,

`CarClassseat`varchar(10)NOTNULL,

PRIMARYKEY(`CarClassNo`))

6.1.3表[customer]:

[客户信息表]

表名

customer

数据库用户

Car_rent

主键

CusNo

序号

字段名称

数据类型

承诺为空Y/N

唯独

Y/N

区别度

默认值

约束条件/说明

1

CusNo

varchar(10)

N

Y

主键

2

CusPassword

varchar(10)

N

N

登录密码

3

CusName

varchar(10)

N

N

客户姓名

4

CusSex

varchar(10)

N

N

客户性别

5

CusAge

varchar(10)

N

N

客户年龄

6

CusPhone

varchar(10)

N

N

客户

7

CusCompany

varchar(10)

N

N

公司

sql脚本

DROPTABLEIFEXISTS`customer`;

CREATETABLE`customer`(

`CusNo`varchar(10)NOTNULL,

`CusName`varchar(10)NOTNULL,

`CusSex`varchar

(2)NOTNULL,

`CusAge`varchar(4)NOTNULL,

`CusPhone`varchar(20)NOTNULL,

`CusCompany`varchar(20)NOTNULL,

`CusPassword`varchar(10)NOTNULL,

PRIMARYKEY(`CusNo`)

6.1.4表[worker]:

[工作人员信息表]

表名

worker

数据库用户

Car_rent

主键

WorkNo

序号

字段名称

数据类型

承诺为空Y/N

唯独

Y/N

区别度

默认值

约束条件/说明

1

WorkNo

varchar(10)

N

Y

主键

2

WorkPassword

varchar(10)

N

N

密码

3

WorkName

varchar(10)

N

N

姓名

4

WorkSex

varchar(10)

N

N

性别

5

WorkPhone

varchar(10)

N

N

sql脚本

DROPTABLEIFEXISTS`worker1`;

CREATETABLE`worker1`(

`WorkNo`varchar(10)NOTNULLDEFAULT'',

`WorkPassword`varchar(10)DEFAULTNULL,

`WorkName`varchar(10)DEFAULTNULL,

`WorkSex`varchar(10)DEFAULTNULL,

`WorkPhone`varchar(10)DEFAULTNULL,

PRIMARYKEY(`WorkNo`)

 

6.1.5表[rent]:

[租赁表]

表名

rent

数据库用户

Car_rent

主键

RecordNo

索引

CarNo、CusNo

序号

字段名称

数据类型

承诺为空Y/N

唯独

Y/N

区别度

默认值

约束条件/说明

1

RecordNo

varchar(10)

N

Y

主键

2

CarNo

varchar(10)

N

N

外键

3

CusNo

varchar(10)

N

N

外键

4

RecordCost

varchar(10)

N

N

总金额

5

RecordRentDate

varchar(10)

N

N

租赁时刻

6

RecordReturnDate

varchar(10)

N

N

归还时刻

sql脚本

DROPTABLEIFEXISTS`rent`;

CREATETABLE`rent`(

`RecordNo`varchar(10)NOTNULL,

`RecordRentDate`datetimeNOTNULL,

`RecordReturnDate`datetimeNOTNULL,

`CusNo`varchar(10)NOTNULL,

`CarNo`varchar(10)NOTNULL,

`RecordCost`varchar(10)DEFAULTNULL,

PRIMARYKEY(`RecordNo`),

KEY`CusNo`(`CusNo`),

KEY`CarNo`(`CarNo`),

CONSTRAINT`CarNo`FOREIGNKEY(`CarNo`)REFERENCES`car`(`CarNo`),

CONSTRAINT`CusNo`FOREIGNKEY(`CusNo`)REFERENCES`customer`(`CusNo`)

 

6.1.6表[manage]:

[治理表]

表名

Wmanage

数据库用户

Car_rent

主键

CarNo、WorkNo

索引

CarNo

序号

字段名称

数据类型

承诺为空Y/N

唯独

Y/N

区别度

默认值

约束条件/说明

1

WorkNo

varchar(10)

N

Y

主键

2

CarNo

varchar(10)

N

N

主键

sql脚本

DROPTABLEIFEXISTS`manege`;

CREATETABLE`manege`(

`WorkNo`varchar(10)NOTNULLDEFAULT'',

`CarNo`varchar(10)NOTNULLDEFAULT'',

PRIMARYKEY(`WorkNo`,`CarNo`),

KEY`CarNo`(`CarNo`),

CONSTRAINT`manege_ibfk_1`FOREIGNKEY(`CarNo`)REFERENCES`car`(`CarNo`),

CONSTRAINT`WorkNo`FOREIGNKEY(`WorkNo`)REFERENCES`worker1`(`WorkNo`)

6.2储备过程

6.2.1查询每辆车的状态和库存数

关键代码

usecar_rent

go

CREATEPROCEDUREproc_car

as

selectcar.CarNo,car.CarState,carclass.CarClassCnt

fromcar,carclass

wherecar.CarClassNo=carclass.CarClassNo

6.2.2查询所输入客户账号的租赁历史记录

关键代码

usecar_rent

go

createprocedureproc_customers

(@CusNovarchar(10))

as

selectrent.Record,rent.RentData,rent.RetunDate,rent.RecordCost,rent.CusNo,car.CarNo,carclass.CarClassBrand

fromrent,car,carclass

where@CusNo=CusNoandrent.CarNo=car.CarNoandcar.CarClassNo=carclass.CarClassNo;

执行

execproc_customers'A01'

6.2.3查询输入客户账号的租赁历史记录

关键代码

usecar_rent

go

createprocedureproc_car_rent

(@CarNovarchar(10))

as

selectrent.Record,rent.RentData,rent.RetunDate,rent.CarNo,rent.CusNo,rent.RecordCost

fromrent

whererent.CarNo=@CarNo;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 工作计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1