数据库长途汽车管理系统Word格式文档下载.doc
《数据库长途汽车管理系统Word格式文档下载.doc》由会员分享,可在线阅读,更多相关《数据库长途汽车管理系统Word格式文档下载.doc(20页珍藏版)》请在冰点文库上搜索。
用来管理汽车乘客出发地、出发地、目的地。
线路
汽车
车票
输入
线路信息
各种查询
管理员
各种报表
票价信息
汽车信息
图2设计思路
3、数据库设计
(1)概念设计
经分析,本系统各实体及其属性的E-R图如下:
图3车票信息表
图4线路信息表
汽车种类
汽车
汽车编号
最大载客量
图5汽车基本信息表
乘客
出发时间
出发地
目的地
图6乘客信息表
各实体间关系的e-r图如下:
线路编号
所需时间
售票情况
车票编号
票价
线路
车票
1
行驶
n
供应
1
售票
n
11
乘车
n1
图7E-R图
(2)逻辑设计
由E-R图转换成关系模式:
数据库中包含4个表,汽车基本信息表、线路信息表、车票信息表和乘客信息表。
汽车基本信息表(汽车编号,汽车种类,最大载客量,线路号)
线路信息表(线路号,出发地,目的地,出发时间,所需时间)
车票信息表(车票编号,售票情况,票价)
乘客信息表(出发时间,出发地,目的地)
(3)物理设计
①逻辑设计相对应的表格
表1线路信息表
属性名
数据类型
宽度
说明
线路号
char
10
主码
int
表2汽车基本信息表
列名
汽车编号
表3车票信息表
票价
表4乘客信息表
属性名
②创建索引
在汽车基本信息表为汽车票号建立唯一索引。
在线路信息表为线路号建立唯一索引。
在车票信息表为车票编号建立唯一索引。
在乘客信息表为出发时间建立唯一索引。
③建立视图
为汽车基本信息表创建视图。
为线路信息表创建视图。
为车票信息表创建视图。
为乘客信息表创建视图。
4、给出系统开发运行环境
(1)硬件
处理器 英特尔第二代酷睿i3-2365M@1.40GHz双核
主硬盘 希捷ST500LM012HN-M500MBB(500GB/5400转/分)
显示器 京东方BOE05C2(14英寸)
(2)软件
MicrosoftSQLServer2005
5、创建各类数据库对象
(1)数据库
CREATEDATABASEchangtuqiche
ON
(NAME=changtuqiche_data,
FILENAME='
c:
\log\changtuqiche_data.mdf'
SIZE=10MB,
MAXSIZE=300MB,
FILEGROWTH=10%)
LOGON
(NAME=changtuqiche_log,
\log\changtuqiche_data.ldf'
SIZE=5MB,
MAXSIZE=200MB,
FILEGROWTH=2MB)
图8创建数据库
(2)表
①CREATETABLE汽车基本信息表
( 汽车编号CHAR(10)PRIMARYKEY,
汽车种类CHAR(10),
最大载客量INT,
线路号CHAR(10))
图9创建汽车基本信息表
②CREATETABLE车票信息表
(车票编号CHAR(10)PRIMARYKEY,
售票情况CHAR(10),
票价INT,
线路号CHAR(10))
图10创建车票信息表
③CREATETABLE线路信息表
(线路号CHAR(10)PRIMARYKEY,
出发地CHAR(10),
目的地CHAR(10),
出发时间CHAR(10),
所需时间INT)
图11创建线路信息表
④CREATETABLE乘客信息表
(汽车编号CHAR(10)PRIMARYKEY,
线路号CHAR(10),
出发地CHAR(10),
目的地CHAR(10),
出发时间CHAR(10))
图12创建乘客信息表
(3)索引
①CREATEUNIQUEINDEXim_in
ON汽车基本信息表(汽车编号)
图13为汽车基本信息表创建索引
②CREATEUNIQUEINDEXik_il
ON线路信息表(线路号)
图14为线路信息表创建索引
③CREATEUNIQUEINDEXid_ix
ON车票信息表(车票编号)
图15为车票信息表创建索引
④CREATEUNIQUEINDEXih_ig
ON乘客信息表(汽车编号)
图16为乘客信息表创建索引
(4)视图
①CREATEVIEWview_1
AS
select汽车编号,汽车种类,最大载客量,线路号
from汽车基本信息表
图17为汽车基本信息表创建视图
②CREATEVIEWview_2
AS
select线路号,出发地,目的地,出发时间,所需时间
from线路信息表
图18为线路信息表创建视图
③CREATEVIEWview_3
select车票编号,售票情况,票价,线路号
from车票信息表
图19为车票信息表创建视图
④CREATEVIEWview_4
select出发时间,出发地,目的地,汽车编号,线路号
from乘客信息表
图20为乘客信息表创建视图
6、录入数据
INSERT
INTO车票信息表
VALUES('
20110001'
'
拥挤'
85'
101'
)
VALUES('
20110002'
良好'
90'
102'
20110003'
稀疏'
110'
103'
20110004'
109'
104'
20110005'
120'
105'
20110006'
160'
106'
INTO汽车基本信息表
1'
A'
35'
2'
B'
50'
3'
C'
45'
4'
D'
55'
5'
E'
6'
F'
60'
INTO线路信息表
南昌市'
抚州市'
18:
00'
景德镇'
鄱阳县'
10:
20'
15:
40'
14:
30'
13:
09:
INTO乘客信息表
09'
07:
23'
28'
7、设计存储过程和触发器
(1)创建存储过程
createprocproc_zg
as
select车票编号,票价
from车票信息表
where线路号='
图21创建存储过程
(2)创建触发器
①createtriggerinsert_qi
on车票信息表
afterinsert
as
select*
from车票信息表
insertinto车票信息表(车票编号,票价)
Values(‘20110001’,‘80’)
图22车票信息表创建触发器
②createtriggerinsert_che
on汽车基本信息表
from汽车基本信息表
insertinto汽车基本信息表(汽车编号,线路号)
Values(‘1’,‘101’)
图23汽车基本信息表建触发器
③createtriggerinsert_xian
on线路信息表
from线路信息表
insertinto线路信息表(线路号,所需时间)
Values(‘106’,‘5’)
图24线路信息表建触发器
④createtriggerinsert_cheng
on乘客信息表
afterinsert
as
select*
from乘客信息表
insertinto线路信息表(出发时间,线路号)
Values('
23’,‘102’)
图25乘客信息表建触发器
8.课程设计总结
通过这次的课程设计实验,我发现自己对数据库课程的兴趣有了很大提高,而且对课本的知识更加的了解并有了一定的掌握,通过实验我懂得了如何创建索引、视图、存储过程以及触发器。
几天的数据库课程设计很快就结束了,在这短暂的几天的的时间里,发现自己学会了很多课外的东西,特别是和同学们一起讨论分析,以及复习了我们所学过的相关数据库知识,进一步了解了数据库的实践应用过程,增强了课外的动手实践能力。
9.参考文献
[1]宋振会.SQLServer2000中文版基础教程[M].北京:
清华大学出版社.2005.5
[2]求是科技SQLServer2000数据库管理与开发大全[M].人民邮电出版社.2004.12
[3](美)西尔伯沙茨.数据库系统概念[M].机械工业出版社.2012.5
[4]徐孝凯,贺桂英.数据库基础与SQLServer应用开发[M].北京:
清华大学出版社.2008.4
[5]成先海.数据库基础与应用-SQLSever2000[M].北京:
机械工业出版社,2008.3
[6]周山夫,黄京莲.数据库应用程序设计[M].北京:
清华大学出版社,2004.9[7]孙瑜.数据库系统基础[M].北京:
人民邮电出版社,2008.10
沈阳大学