长途汽车信息管理系统.docx
- 文档编号:29314110
- 上传时间:2023-07-22
- 格式:DOCX
- 页数:22
- 大小:273.91KB
长途汽车信息管理系统.docx
《长途汽车信息管理系统.docx》由会员分享,可在线阅读,更多相关《长途汽车信息管理系统.docx(22页珍藏版)》请在冰豆网上搜索。
长途汽车信息管理系统
附件1:
学号:
2008305122
课程设计
题目
长途汽车管理系统
学院
XX工商大学
专业
软件工程
班级
08计本
学生XX
指导教师
X小明
2010
年
6
月
26
日
XX工商大学课程设计成绩评定表
学院:
班级:
08计本学生XX:
学号:
2008305122
项目
分值
优秀
(100>x≥90)
良好
(90>x≥80)
中等
(80>x≥70)
及格
(70>x≥60)
不及格(x<60)
评分
参考标准
参考标准
参考标准
参考标准
参考标准
学习态度
15
学习态度认真,科学作风严谨,严格保证设计时间并按任务书中规定的进度开展各项工作
学习态度比较认真,科学作风良好,能按期圆满完成任务书规定的任务
学习态度尚好,遵守组织纪律,基本保证设计时间,按期完成各项工作
学习态度尚可,能遵守组织纪律,能按期完成任务
学习马虎,纪律涣散,工作作风不严谨,不能保证设计时间和进度
技术水平与实际能力
25
设计合理、理论分析与计算正确,实验数据准确,有很强的实际动手能力、经济分析能力和计算机应用能力,文献查阅能力强、引用合理、调查调研非常合理、可信
设计合理、理论分析与计算正确,实验数据比较准确,有较强的实际动手能力、经济分析能力和计算机应用能力,文献引用、调查调研比较合理、可信
设计合理,理论分析与计算基本正确,实验数据比较准确,有一定的实际动手能力,主要文献引用、调查调研比较可信
设计基本合理,理论分析与计算无大错,实验数据无大错
设计不合理,理论分析与计算有原则错误,实验数据不可靠,实际动手能力差,文献引用、调查调研有较大的问题
创新
10
有重大改进或独特见解,有一定实用价值
有较大改进或新颖的见解,实用性尚可
有一定改进或新的见解
有一定见解
观念陈旧
论文(计算书、图纸)撰写质量
50
结构严谨,逻辑性强,层次清晰,语言准确,文字流畅,完全符合规X化要求,书写工整或用计算机打印成文;图纸非常工整、清晰
结构合理,符合逻辑,文章层次分明,语言准确,文字流畅,符合规X化要求,书写工整或用计算机打印成文;图纸工整、清晰
结构合理,层次较为分明,文理通顺,基本达到规X化要求,书写比较工整;图纸比较工整、清晰
结构基本合理,逻辑基本清楚,文字尚通顺,勉强达到规X化要求;图纸比较工整
内容空泛,结构混乱,文字表达不清,错别字较多,达不到规X化要求;图纸不工整或不清晰
指导教师评定成绩:
指导教师签名:
2010年6月25日
长途汽车信息管理系统
一.需求分析阶段
长途汽车信息管理数据库系统是面向所有汽车的数据管理系统,其目的是使乘车有序化,规X化,简单化,易于车站人员的管理,查询。
本系统主要包括以下几个模块:
乘客信息、汽车信息、线路以及车票的信息这四个功能模块基本实现设计本系统的目的,从而可以进一步满足车站对乘客乘车管理的要求。
二、概念设计阶段
在长途汽车管理系统中应包括汽车的线路,汽车的基本信息,车票的基本信息,以及乘客的生粉验证等。
因此,需要设计四个模块。
可设四个实体:
汽车线路,汽车,车票,乘客。
联系类型有汽车和线路之间的联系,车票和乘客之间的联系,汽车和乘客之间的联系。
他们之间关系为:
一条线路上可以有多辆汽车行驶,但一辆汽车只能行使在一条线路上(1:
N);一位乘客只能购买一X车票,一X车票只能归一位乘客所有(1:
N);一辆汽车可以装载多名乘客,但一个乘客只能乘坐一辆汽车(1:
N)。
实体与联系应具有的属性见E—R图。
根据以上分析,相应的E-R模型与图1所示。
(由于实体属性较多,为了ER图能显得清晰,因此采用只画实体和联系,其属性在图外加以说明的方法)
车票
售票
乘客
乘车
汽车
供应
行驶
线路
1
1
n
1
n
1
1
n
图1长途汽车管理系统的ER图
实体类型结构如下:
汽车线路(出发地,目的地,出发时间,行驶的总时间)
汽车(汽车类型,班次,最大载客数,剩余座位)
车票(已买票数,剩余票数,票价)
乘客(XX,年龄,性别,民族)
联系类型结构如下:
乘坐(汽车班次,类型)
供应(数量)
行驶(线路)
三、逻辑设计阶段
根据ER模型转换成关系模型的规则,可把上述ER图转换成5个关系模式,从而实现对机场乘客验证ER模型向关系数据模型的转换,具体如下:
汽车线路(出发地,目的地,出发时间,行驶的总时间)
汽车(汽车类型,汽车班次,最大载客数,剩余座位数)
车票(已买票数,剩余票数,票价)
乘客(XX,年龄,性别,民族)
乘坐(所需时间,汽车班次,票价,乘客XX)
冗余问题检查:
在各关系模式中,可得出每个关系的属性值都是不可分的,因此各关系模式都是规X化关系;又可从以上各关系模式中可得每个属性都不传递依赖于各关系模式的候选键,且转换后各个属性值的数据并没有丢失,数据共享率高,所以在ER模型向关系模式转化时不存在冗余问题。
四、物理设计阶段
1.创建汽车线路表,用MicrosoftSQL2000Server数据库系统的Transact-SQL语句定义创建这个表,程序如下:
createtableBusline
(
Sourcechar(20),
Destinationchar(20),
Startchar(15),
Alltimesmallintprimarykey,
);
将代码写入SQL查询分析器的SQL编辑窗体中,并运行可得数据空表如图2所示:
创建的Busline表及其属性如下:
往表中加数据语句如下:
insertintoBusline
values(’合川’,’北碚’,’8:
00’,’50’)
insertintoBusline
values(‘合川’,’北碚’,’8:
30’,’59’)
insertintoBusline
values(‘合川’,’北碚’,’7:
30’,’60’)
insertintoBusline
values(‘合川’,’龙头寺’,’7:
00’,’70’)
insertintoBusline
values(‘合川’,’沙坪坝’,’9:
00’,’71’)
insertintoBusline
values(‘合川’,’沙坪坝’,’8:
30’,’72’)
insertintoBusline
values(‘合川’,’沙坪坝’,’8:
50’,’75’)
继续添加数据
由以上可得一个表名为”Busline”的数据表就建成了如图:
2.创建汽车表,用MicrosoftSQL2000Server数据库系统的Transact-SQL语句定义创建这个表,程序如下:
createtableBus
(
Typechar(20),
Maxpassengersmallint,
Turnchar(20)primarykey,
Remaindersmallint,
);
将代码写入SQL查询分析器的SQL编辑窗体中,并运行可得数据空表如图2所示:
创建的Bus表及其属性如下:
往表中加数据语句如下:
insertintoBus
values(’大’,’50’,’0001’,’20’)
insertintoBus
values(’大’,’50’,’0002’,’30’)
insertintoBus
values(’大’,’45’,’0003’,’15’)
insertintoBus
values(’中’,’35’,’0004’,’21’)
insertintoBus
values(’中’,’35’,’0005’,’16’)
继续添加数据
由以上可得一个表名为”Bus”的数据表就建成了如图:
3.创建车票表,用MicrosoftSQL2000Server数据库系统的Transact-SQL语句定义创建这个表,程序如下:
createtableTicket
(
Soldsmallint,
Remaindersmallint,
Pricesmallintprimarykey,
);
将代码写入SQL查询分析器的SQL编辑窗体中,并运行可得数据空表如图2所示:
创建的Ticket表及其属性如下:
往表中加数据语句如下:
insertintoTicket
values(’22’,’3’,’15’)
insertintoTicket
values(’19’,’6’,’16’)
insertintoTicket
values(’20’,’5’,’18’)
insertintoTicket
values(’30’,’15’,’26’)
insertintoTicket
values(’20’,’30’,’27’)
继续添加数据
由以上可得一个表名为”Ticket”的数据表就建成了如图:
4.创建乘客表,用MicrosoftSQL2000Server数据库系统的Transact-SQL语句定义创建这个表,程序如下:
createtablePassenger
(
Pnamechar(10)primarykey,
Psexchar
(2),
Pracialchar(5),
Psagesmallint,
);
将代码写入SQL查询分析器的SQL编辑窗体中,并运行可得数据空表如图2所示:
创建的Passenger表及其属性如下:
往表中加数据语句如下:
insertintoPassenger
values(’高健’,’男’,’汉’,’23’)
insertintoPassenger
values(’李勇’,’男’,’汉’,’36’)
insertintoPassenger
values(’李宇春’,’男’,’汉’,’24’)
insertintoPassenger
values(’X承’,’男’,’汉’,’18’)
insertintoPassenger
values(’X霞’,’女’,’汉’,’22’)
继续添加数据
由以上可得一个表名为”Passenger”的数据表就建成了如图:
5.创建Bbtp表,用MicrosoftSQL2000Server数据库系统的Transact-SQL语句定义创建这个表,程序如下:
createtableBbtp
(
Alltimesmallint,
Turnchar(20),
Pricesmallint,
Pnamechar(10)primarykey,
foreignkey(Alltime)referencesBusline(Alltime),
foreignkey(Price)referencesTicket(Price),
foreignkey(Turn)referencesBus(Turn),
);
将代码写入SQL查询分析器的SQL编辑窗体中,并运行可得数据空表如图2所示:
创建的Bbtp表及其属性如下:
往表中加数据语句如下:
insertintoBbtp
values(’60’,’0005’,’32’,’高健’)
insertintoBbtp
values(’60’,’0005’,’32’,’李宇春’)
insertintoBbtp
values(’75’,’0003’,’30’,’X承’)
insertintoBbtp
values(’70’,’0002’,’18’,’X霞’)
继续添加数据
由以上可得一个表名为”Bbtp”的数据表就建成了如图:
五.利用Transact-SQL的SELECT语句实现
1.先对五X表进行查询
select*fromBus;
查询结果如下:
select*fromBusline;
查询结果如下:
select*fromTicket;
查询结果如下:
查询结果如下:
select*fromPassenger;
select*fromBbtp;
查询结果如下:
2.对票价为‘28’的车票的剩余票数和已买票数进行的查询
selectSold,Remainder
fromTicket
wherePrice='28'
查询结果如下:
3.查询已购票的所有乘客
selectPassenger.*,Bbtp.*
fromPassenger,Bbtp
wherePassenger.Pname=Bbtp.Pname
查询结果如下:
4.对汽车行驶时间在60分钟以上的情况进行的查询
selectAlltime
fromBusline
groupbyAlltime
Havingcount(*)>='60'
查询结果如下:
5.对所有‘大’型车的剩余票数进行查询
selectType,Remainder
fromBus
whereType='大'
查询结果如下:
6.对和乘客XX为‘高健’同坐一班车的乘客的基本信息的查询
selectPname,Psex,Pracial,Psage
FromPassenger
wherePnamein
(selectPname
fromBbtp
whereTurnin
(selectTurn
fromBbtp
wherePname='高健'
)
)
查询结果如下:
7.对目的地为‘北碚’的所有乘客进行查询
selectPname
fromBbtp
whereAlltimein
(
selectAlltime
fromBusline
whereDestination='北碚'
)
查询结果如下:
8.对所有在30岁以下的乘客进行查询
selectPassenger.*
fromBbtp,Passenger
whereBbtp.Pname=Passenger.Pnameand
Psage<='30'
查询结果如下:
9.将所有乘车线路所需时间按降序排列:
selectBusline.*
fromBusline
orderbyAlltimedesc
排列结果如下:
10.查询所有已购票乘客中男性乘客的总票价:
selectsum(Price)
fromPassenger,Bbtp
wherePassenger.Psex='男'and
Bbtp.Pname=Passenger.Pname
查询结果如下:
11.查询所有姓‘X’的乘客:
select*
fromPassenger
wherePnamelike'X%'
查询结果如下:
12.将一个新乘客元组(XX:
黄若溪;性别:
男;民族:
汉;年龄:
20)插入到Passenger表中:
insert
intoPassenger(Pname,Psex,Pracial,Psage)
values('黄若溪','男','汉','20')
插入结果如下:
13.删除XX为‘李勇’的乘客记录:
delete
fromPassenger
wherePname='李勇'
删除后结果为:
14.建立合川到北碚这条线路的视图is_Busline:
createviewis_Busline
as
selectSource,Destination,Start,Alltime
fromBusline
whereDestination='北碚'
建立结果和属性如下:
15.更新is_Busline视图中的数据,将所需时间为60分钟的班次的出发时间改为‘9:
00’:
updateis_Busline
setStart='9:
00'
whereAlltime='60'
修改后视图如下:
16.建立一个视图,将中剩余票数大于平均值的定义成一个视图:
createviewis_Ticket
as
select*
fromTicket
whereRemainder>
(selectavg(Remainder)
fromTicket)
建立结果及属性如下:
17.创建一个视图,将Bbtp中票价大于20的定义成一个视图:
createviewis_Bbtp
as
select*
fromBbtp
whereprice>='20'
建立结果及属性如下:
参考文献:
王珊等.《数据库系统概论》课程课件.2006
丁宝康等.数据库实用教程[M].清华大学.2002
丁宝康等.数据库实用教程习题解答[M].清华大学.2004
X玲利.数据原理与应用案例教程[M].清华大学.2008
龙帅.深入浅出SQLServer数据库开发[M].中国青年.2006
X大玮等.SQLServer数据库项目案例导航[M].清华大学.2005
源码网(.codepub.)等其他相关上的资料
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 长途汽车 信息管理 系统