数据库长途汽车管理系统.docx
《数据库长途汽车管理系统.docx》由会员分享,可在线阅读,更多相关《数据库长途汽车管理系统.docx(20页珍藏版)》请在冰豆网上搜索。
数据库长途汽车管理系统
长途汽车管理系统
1、课程设计的目的
(1)通过课程设计加深对《数据库基础及应用》课程相关知识的理解,培养运用所学理论知识和操作技能分析,解决实际系统问题的能力。
(2)掌握用数据库理论设计实际系统的思想和方法。
(3)培养调查研究、查阅技术文件的能力。
2、系统功能分析与设计
(1)根据长途汽车管理系统,设计出如图1所示功能模块图
图1 系统功能模块图
(2)对各模块功能进行描述:
线路模块:
用来管理汽车线路号、出发地、目的地、出发时间、所需时间。
汽车模块:
用来管理汽车汽车编号、汽车的种类及相应的票价、最大载客量、剩余座位数。
车票模块:
用来管理汽车车票编号、售票情况、查询、打印。
乘客模式:
用来管理汽车乘客出发地 、出发地、目的地。
图2 设计思路
3、数据库设计
(1)概念设计
经分析,本系统各实体及其属性的E-R图如下:
图3车票信息表
图4 线路信息表
图 5 汽车基本信息表
图 6乘客信息表
各实体间关系的e-r图如下:
1
n
1
n
1 1
n 1
图7 E-R图
(2)逻辑设计
由E-R图转换成关系模式:
数据库中包含4个表,汽车基本信息表、线路信息表、车票信息表和乘客信息表。
汽车基本信息表(汽车编号,汽车种类,最大载客量,线路号)
线路信息表(线路号,出发地,目的地,出发时间,所需时间)
车票信息表(车票编号,售票情况,票价)
乘客信息表(出发时间,出发地,目的地)
(3)物理设计
逻辑设计相对应的表格
表1线路信息表
属性名
数据类型
宽度
说明
线路号
char
10
主码
出发地
char
10
目的地
char
10
出发时间
char
10
所需时间
int
表2 汽车基本信息表
列名
数据类型
宽度
说明
汽车编号
char
10
主码
汽车种类
char
10
最大载客量
int
线路号
char
10
表3车票信息表
属性名
数据类型
宽度
说明
车票编号
char
10
主码
售票情况
char
10
票价
int
线路号
char
10
表4 乘客信息表
属性名
数据类型
宽度
说明
汽车编号
char
10
主码
出发地
char
10
目的地
char
10
线路号
char
10
出发时间
char
10
②创建索引
在汽车基本信息表为汽车票号建立唯一索引。
在线路信息表为线路号建立唯一索引。
在车票信息表为车票编号建立唯一索引。
在乘客信息表为出发时间建立唯一索引。
建立视图
为汽车基本信息表创建视图。
为线路信息表创建视图。
为车票信息表创建视图。
为乘客信息表创建视图。
4、给出系统开发运行环境
(1)硬件ﻩ
处理器英特尔第二代酷睿 i3-2365M @1.40GHz双核
主硬盘希捷ST500LM012HN-M500MBB( 500GB /5400转/分)
显示器ﻩ京东方BOE05C2 (14英寸)
(2)软件
MicrosoftSQLServer2005 ﻩ
5、创建各类数据库对象
(1)数据库
CREATE DATABASEchangtuqiche
ON
(NAME=changtuqiche_data,
FILENAME='c:
\log\changtuqiche_data.mdf',
SIZE=10MB,
MAXSIZE=300MB,
FILEGROWTH=10%)
LOGON
(NAME=changtuqiche_log,
FILENAME='c:
\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创建车票信息表
③CREATE TABLE线路信息表
(线路号 CHAR(10)PRIMARY KEY,
出发地 CHAR(10),
目的地 CHAR(10),
出发时间 CHAR(10),
所需时间 INT)
图11 创建线路信息表
CREATETABLE乘客信息表
( 汽车编号 CHAR(10)PRIMARYKEY,
线路号CHAR(10),
出发地CHAR(10),
目的地 CHAR(10),
出发时间 CHAR(10))
图12 创建乘客信息表
(3)索引
CREATEUNIQUE INDEXim_in
ON汽车基本信息表(汽车编号)
图13 为汽车基本信息表创建索引
②CREATEUNIQUEINDEXik_il
ON线路信息表(线路号)
图14为线路信息表创建索引
CREATE UNIQUE INDEXid_ix
ON车票信息表(车票编号)
图15 为车票信息表创建索引
CREATE UNIQUEINDEXih_ig
ON乘客信息表(汽车编号)
图16 为乘客信息表创建索引
(4)视图
①CREATE VIEWview_1
AS
select汽车编号,汽车种类,最大载客量,线路号
from汽车基本信息表
图17 为汽车基本信息表创建视图
CREATE VIEW view_2
AS
select线路号,出发地,目的地,出发时间,所需时间
from线路信息表
图18为线路信息表创建视图
CREATEVIEW view_3
AS
select 车票编号,售票情况,票价,线路号
from车票信息表
图19 为车票信息表创建视图
CREATEVIEW view_4
AS
select 出发时间,出发地,目的地,汽车编号,线路号
from乘客信息表
图20 为乘客信息表创建视图
6、录入数据
INSERT
INTO车票信息表
VALUES('20110001','拥挤','85','101')
INSERT
INTO 车票信息表
VALUES('20110002','良好','90','102')
INSERT
INTO 车票信息表
VALUES ('20110003','稀疏','110','103')
INSERT
INTO车票信息表
VALUES('20110004','拥挤','109','104')
INSERT
INTO车票信息表
VALUES('20110005','拥挤','120','105')
INSERT
INTO车票信息表
VALUES('20110006','良好','160','106')
INSERT
INTO 汽车基本信息表
VALUES ('1','A','35','101')
INSERT
INTO 汽车基本信息表
VALUES('2','B','50','102')
INSERT
INTO 汽车基本信息表
VALUES('3','C','45','103')
INSERT
INTO 汽车基本信息表
VALUES('4','D','55','104')
INSERT
INTO 汽车基本信息表
VALUES('5','E','45','105')
INSERT
INTO汽车基本信息表
VALUES('6','F','60','106')
INSERT
INTO 线路信息表
VALUES('101','南昌市','抚州市','18:
00','2')
INSERT
INTO 线路信息表
VALUES ('102','景德镇','鄱阳县','10:
20','1')
INSERT
INTO线路信息表
VALUES('103','鄱阳县','南昌市','15:
40','4')
INSERT
INTO线路信息表
VALUES('104','抚州市','南昌市','14:
30','2')
INSERT
INTO 线路信息表
VALUES('105','抚州市','南昌市','13:
00','3')
INSERT
INTO线路信息表
VALUES('106','南昌市','景德镇','09:
00','5')
INSERT
INTO 乘客信息表
VALUES ('18:
09','南昌市','抚州市','1','101')
INSERT
INTO 乘客信息表
VALUES('07:
00','南昌市','景德镇','6','106')
INSERT
INTO 乘客信息表
VALUES('10:
23','景德镇','鄱阳县','2','102')
INSERT
INTO 乘客信息表
VALUES('14:
30','抚州市','南昌市','5','105')
INSERT