数据库课程设计机票预订系统文档格式.docx
- 文档编号:8621069
- 上传时间:2023-05-12
- 格式:DOCX
- 页数:21
- 大小:279.22KB
数据库课程设计机票预订系统文档格式.docx
《数据库课程设计机票预订系统文档格式.docx》由会员分享,可在线阅读,更多相关《数据库课程设计机票预订系统文档格式.docx(21页珍藏版)》请在冰点文库上搜索。
飞机编号
seats
number
notnull
座位数
表2-2 flight航班信息表
flightNum
航班编号
planeNum
startPoint
notnull
出发地
detination
目的地
startTime
起飞时间
endTime
到达时间
表2-3 ticket机票表
航班号
grade
机舱等级
seatNum
座位号
ticketPrice
机票价格
presell
预售状态
表2-4 passenger旅客表
name
旅客名
sex
旅客性别
idNum
身份证
phoneNum
手机号
password
密码
表2-5 buy购买表
foreignkey
gread
paymoney
buyNum
购买数量
表2-6 manager管理员表
mname
notnullunique
管理员编号
mpwd
管理员姓名
2.1.3加工说明
我们的系统需要六个实体:
(1)飞机实体
实体名:
plane
角色:
关于飞机的信息
属性:
飞机编号,座位数
主键:
(2)航班实体
flight
航班信息
航班编号,出发地,目的地,起飞时间,到达时间
(3)机票实体
ticket
机票信息
航班号,机舱等级,座位号,机票价格,余票数
(4)旅客实体
passenger
旅客信息
旅客名,旅客性别,身份证,手机号,密码
(5)机票购买实体
buy
旅客购买机票后的信息
旅客名,航班号,机舱等级,座位号,机票价格,购买数量
(6)管理员实体
manager
管理员信息
管理员名,密码
2.2概念结构设计
2.2.1E-R图
根据需求分析抽象出信息结构,可得该系统的E-R图。
(1)航班实体属性图,航班的信息由航班号、飞机编号、出发地、目的地、起飞时间、到达时间等属性组成如图所示。
图
(1)航班信息实体属性图
(2)飞机是实体属性图,飞机信息由飞机编号和座位数属性组成如图所示。
图
(2)飞机信息实体属性图
(3)管理员实体属性图,管理员信息由姓名和登录密码属性组成如图所示
图(3)管理员信息实体属性图
(4)机票实体属性图,机票信息有:
航班号、机舱等级、座位号、票价、预售状态等属性如图所示。
图(4)机票信息实体属性图
(5)旅客属性图,旅客信息有:
身份证号、姓名、性别、联系方式、密码等属性如图所示。
图(5)旅客信息实体属性图
(6)订单属性图,订单信息有:
姓名、航班号、座位号、机舱等级、金额、订单数等属性如图所示。
图(6)订单信息实体属性图
根据属性图和需求分析,可得到总E-R图,如图所示。
图(7)总的E-R图
2.3逻辑结构设计
2.3.1关系模式
将总体概念结构E-R图转化成关系模型。
(主键用下划线标出)
飞机(飞机编号,座位数)
航班(航班编号,飞机编号,出发地,目的地,起飞时间,到达时间)
管理员(管理员姓名,密码)
机票(航班编号,机舱等级,座位号,票价,当前预售状态)
旅客(身份证号,姓名,性别,密码,联系电话)
购买(姓名,航班号,座位号,机舱等级,实付款,数量)
2.4物理结构设计
根据总体结构图设计机票预定系统基本表结构,其相应标的定义如下:
表1飞机信息
中文名称
类型
长度
是否非空
主关键字
备注
10
Y
N
总座位
表2航班信息
起飞地
年月日/时分
表3管理员信息
char
登陆密码
表4机票信息
票价
float
(2)
元
当前预售状态
Y/N
表5旅客信息
旅客姓名
身份证号
性别
联系方式
15
表4-6购买信息
float
(1)
实付款
int
数据库实现:
--飞机信息表plane
createtableplane
(
flightNumvarchar2(10),--航班号
seatsnumber(8)notnull--座位数
);
insertintoplanevalues('
航班1'
5);
航班2'
航班3'
航班4'
select*fromplane;
--航班表flight
createtableflight
flightNumvarchar2(10)primarykey,--航班编号
planeNumvarchar2(10),--飞机编号
startPointvarchar2(20)notnull,--出发地
detinationvarchar2(10)notnull,--目的地
startTimevarchar2(20)notnull,--起飞时间
endtimevarchar2(20)notnull--到达时间
--插入数据到航班表(flight)中
insertintoflightvalues('
'
长沙'
武汉'
2015-12-2908:
00'
2015-12-2910:
北京'
台湾'
2015-12-3008:
30'
2015-12-2911:
上海'
2016-01-0111:
2016-01-115:
广州'
杭州'
2016-01-1009:
2016-01-0210:
select*fromflight;
--航班表的flightNum作为飞机信息表flightNum的外键
altertableplaneaddconstraintfk_fnforeignkey(flightNum)referencesflight(flightNum);
--创建机票表ticket
createtableticket
flightNumvarchar2(10)notnull,--航班号
gradevarchar2(10)notnull,--机舱等级
seatNumvarchar2(10)primarykey,--座位号
ticketPricefloat
(2)notnull,--机票价格
presellvarchar2(10)notnull--余票数
--插入数据到机票表(ticket)中
insertintoticketvalues('
头等舱'
1-01'
500'
1'
公务舱'
1-02'
400'
1-03'
经济舱'
1-04'
300'
1-05'
2-01'
2-02'
2-03'
2-04'
2-05'
3-01'
3-02'
3-03'
3-04'
3-05'
4-01'
4-02'
4-03'
4-04'
4-05'
select*fromticket;
--航班表的flightNum作为机票表flightNum的外键
altertableticketaddconstraintfk_tfnforeignkey(flightNum)referencesflight(flightNum);
--创建旅客表
createtablepassenger
namevarchar2(10)primarykey,--旅客名
sexvarchar2(10)notnull,--旅客性别
idNumvarchar2(20)notnull,--身份证
phoneNumvarchar2(15)notnull,--手机号
passwordvarchar2(10)notnull--密码
--插入数据到旅客表(passenger)中
insertintopassengervalues('
张三'
男'
1220101'
1316060001'
zs'
李四'
1220102'
1316060002'
ls'
王五'
女'
1220103'
1316060003'
ww'
赵六'
1220104'
1316060004'
zl'
select*frompassenger;
--创建购买表
createtablebuy
namevarchar2(20),--旅客名
greadvarchar2(10)notnull,--机舱等级
seatNumvarchar2(10)notnull,--座位号
paymoneyfloat
(2)notnull,--机票价格
buyNumnumber(8)notnull--购买数量
--插入数据到购买表(buy)中
insertintobuyvalues('
400,1);
270,1);
select*frombuy;
--旅客表的name作为购买表name的外键
altertablebuyaddconstraintfk_bnforeignkey(name)referencespassenger(name);
--管理员表
createtablemanager(
mnamevarchar2(20)notnull,--管理员名
mpwdvarchar2(10)notnull,--管理员登录密码
yuliuvarchar2(20)
select*frommanager;
insertintomanagervalues('
李华'
aaaaaa'
null);
select*frommanagerwheremname='
andmpwd='
;
2.5设计小结
经过这几个星期的努力,本次课程设计终于完成了。
通过这次课程设计,我对数据库这门课程有了更深入的理解,数据库是一门实践性较强的课程,同时我明白了理论与实际应用相结合的重要性,掌握并熟练运用SQL语句,提高了我的综合运用所学知识的能力。
在本次课程设计和过程中,由于时间不是很长,再加上要求独立完成,系统需求分析上可能不是很全面,程序中还存在很多缺,希望老师能给予批评和指导。
经过这次课程设计,我的知识得到了很大,经验也更加丰富。
希望能在今后的不断的学习中和努力中,把程序做得更好。
我们学习并应用了SQL语言,对数据库的创建、修改、删除方法有了一定的了解,通过导入表和删除表、更改表学会了对于表的一些操作,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。
这次课程设计,我更加深入的了解到软件工程的复杂性,以及前期规划分析的重要性。
其实在Java这种面向对象的程序设计中,我的开发模型能力很是一般。
所以一人之力也难以完成。
还得多多感谢同学的帮助,在以后的学习中应该学习一些先进的思想,并多加实践,从写程序和软件架构两个方面都增强自己的能力。
最后,感谢指导老师给予的帮助。
3应用程序设计
3.1需求分析
3.1.1数据流图
3.1.2数据词典
表3-1 plane飞机信息表
表3-2 flight航班信息表
表3-3 ticket机票表
表3-4 passenger旅客表
表3-5 buy购买表
表3-6 manager管理员表
3.1.3加工说明
机票信
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计 机票 预订 系统