ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:522.85KB ,
资源ID:7989127      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-7989127.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库课程设计飞机订票系统.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

数据库课程设计飞机订票系统.docx

1、数据库课程设计飞机订票系统数据库课程设计报告题 目 飞机订票管理系统 概述 项目背景航空业作为运输行业的基础,要提高我国运输行业的整体水平,必须从基础抓起。订票系统是航空业从事生产和管理的基层单位,加强订票系统是航空业基础地位的关键,也是保障航空业业可持续发展的重要基石。随着现在航空运输业的发展,机票预订系统也成为了航空运输业的软件副产品,目前的管理系统都是与数据库关联,故数据库的管理也成为很热门的研究对象。此项目是以数据库为支撑,java(eclipse)为平台而开发的。 编写目的编写此项目的目的是为了进一步了解数据库的储存管理机制以及数据库与其他的语言语言工具之间关联和协作。也可以熟悉项目

2、开发的流程,步骤,为以后编写其他的程序打下基础。1,了解并掌握数据结构的设计方法,具备初步的独立分析能力;2,初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能3,提高综合运用所学的理论知识和方法独立分析和解决问题的能力;4,训练用系统的观点和软件开发的一般规范进行软件开发,培养软件工作者所具备的的科学的工作方法和作风。 开发工具 软件定义Oracle 11g,PowerDesigner,eclipse 开发环境Windows7,Java,database需求分析 问题陈述设计一个飞机订票系统要求具备如下基本功能:1、 班机基本信息的管理;2、 航班信息的管理;3、 旅客

3、预定机票、取消预约、付款取票、退票的管理;4、 查询航班信息、航班预定情况、旅客信息,计算航班满座率。5、 统计每周、每月,每年营业收入情况。 ER模型图Er模型图 第三章 数据库逻辑设计 定义数据库表数据库表1,flight表字段名数据类型含义说明控制情况startplaceVarchar2起点不为空endplaceVarchar2终点不为空starttimeVarchar2起飞时间不为空endtimeVarchar2到达时间不为空flightnumVarchar2航班号主关键字ReturnnumVarchar2返航号可为空AirfirmVarchar2航空公司不为空typeVarchar2

4、飞机类型不为空ticketint余票不为空pricefloat票价不为空 2. Customer表字段名 数据类型 含义说明 控制情况nameVarchar2顾客姓名不为空 idVarchar2身份证主键 flightnumVarchar2航班号外键C_typeint 订票/候补不为空telephoneVarchar2电话号码不为空tickint订票数不为空表字段名数据类型含义说明控制情况incomefloat收入可为空outcomefloat支出可为空 Powerdesign下的物理模型构建 软件功能设计 软件功能结构图 软件划分模块 整体流程:对主界面进行功能选择操作,通过反馈Action

5、进入分功能操作,然后在Action模块中分别由search(),add(),delete(),update()关联到Dao包(Dao包主要管理连接数据库的业务),然后根据不同的功能进入到了关联数据库的部分,通过如下部分连接数据库:1,加载JDBC驱动程序,成功加载后,会将Driver类的实例注册到DriverManager;2,提供JDBC连接的URL,连接URL定义了连接数据库时的协议,子协议,数据源标识;3,创建数据库的连接,向请求并获得Connection对象,该对象就代表一个数据库连接;Connection conn=(url,username,password) 4,创建一个Stat

6、ement,要执行SQL语句,必须获得实例,然后将要执行的语句作为参数传进去PreparedStatement pstmt=(sql);5,执行sql语句,Statement接口提供了三种执行SQL语句的方法:executeQuery,executeUpdate,和executeResultSet rs=(String sql);6处理结果:执行更新返回的本次操作影响到的记录数,执行查询返回的结果是个ResultSet对象,使用结果集对象的访问方法获取数据:While()String name=(“name”);String pass=(1);7,关闭JDBC对象:操作完成以后要把所有使用的J

7、DBC对象全部关闭,以释放JDBC资源,关闭顺序和声明顺序相反:首先关闭记录集,然后关闭声明,最后关闭连接对象If(rs!=null)Try();catch(SQLException e)();然后是stmt最后是conn这样就是整个流程的进行 航班信息查询模块该模块属于基本功能,其主要实现对航班的基本信息的查询,修改和删除,是通过对后台的各种操作来方便前台。其主要用的SQL语句有:select,insert,delete,update 等.如select * from flight;(从flight表中检索所有的信息)Insert into flight values(,);然后数据库通过J

8、DBC连接到java,再在java中通过对界面的操作,与各功能块的实现结合起来。Java中的部分功能实现代码:1,查询模块 private void queryData(int page) etText().trim().length(); int len2=().getText().trim().length(); int len3=().getText().trim().length(); int len4=().getText().trim().length(); String len5=().getSelectedItem().toString(); if(getstring(len1

9、,len2,len3,len4) (dialog, 带*请务必全部输入); else flightVo vo = new flightVo(); ().getText().trim(); ().getText().trim(); ().getSelectedItem().toString();etText() ); ( ().getText() ); ().getText().trim(); ().getText(); ().getText(); (已定票); String msg = ; 提交); int flag,count,count1,count2; count=().getText(

10、); count1=().getText(); count=count-count1; if(count0) if(vo) 0) if(vo)0) msg = 订票成功!; else msg=定票失败; else msg=定票失败; elseetText(); count1=().getText(); count2=count1-count; if(dialog, 余票不足,您可以订+count+张票,剩下的+count2+加入候补,确定, = 1) return; ().getText().trim(); ().getText().trim(); ().getSelectedItem().t

11、oString();etText() ); ( ().getText() ); ().getText().trim(); (count); (count+); (已定票); if(count0) (vo); (vo); msg=; ().getText().trim(); ().getText().trim(); ( ().getText() ); ().getText().trim(); ().getSelectedItem().toString(); (count2+); (已候补); (vo); msg=操作成功; (dialog, msg); ().setVisible(false);

12、 ().dispose(); ().setVisible(true);etText().trim(); String id1 = ().getText().trim(); -+id1); -+ticket); -+(1234); if().getText().trim()0) int haveticket=(id1); if(ticket=haveticket) (ticket); ().getText().trim(); ().getText().trim(); String Id =().getText().trim(); if(Id) 0) (vo); msg = 退票成功; ( dia

13、log, msg ); jbbupiao(); jbRewrite(); else msg = 退票失败; ( dialog, msg ); else if(tickethaveticket) ().getText().trim(); (ticket+); (ticket); ().getText().trim(); (vo); (vo); msg=退票成功; ( dialog, msg ); jbbupiao(); jbRewrite(); else ( dialog, 退票数目不能大于已定票数目 ); else msg = 退票数目不能为0; ( dialog, msg ); 部分界面:

14、财务查询这属于附加功能,实际上也就是通过记录每次的订票和退票的记录,然后通过profit=income-outcome就可以得到每周每月的收入和支出以及收支比了。界面设计程序的见面设计做到了简洁,合理,交互性强主界面:其他的分界面在各功能模块均有展示,此处不赘述结束语 这次的数据库实验历时数周,但收获也是颇大的。数据库实验我做的是飞机订票系统,之前的实验有做过一些比较小的系统,如学生管理系统,都是直接从程序中调用数据,用链表等将其存储,连接数据库的系统还是第一次,不过其基本功能相似,只是增加的在数据库中的存储部分,数据库从数据结构的角度来说,也可以近似看成一个顺序表。系统的基本功能就是对这些表

15、的增删改查来实现的。实验设计的工具比较多,包括对数据库进行操作的开发语言工具,数据库管理系统,还有一些辅助的工具,如powerdesigner等。也体会到了各种工具的方便性,但是无论什么工具都是为了实现功能服务的。本系统实现的功能有,航班的基本信息查询,顾客的基本信息查询,订票功能,退票功能以及账务的查询功能,基本上实现了所需要的基础功能,只是还有很多不完善的地方,比如航班的基本信息查询中的添加功能,只能一条一条记录的添加,并不能批量的添加,这样可能在使用时会造成很多的时间的浪费,是需要改善的地方,我觉得可以从接受添加信息的数据类型和写入数据库的数据类型的方面来改进,由一条数据变成一组数据。这

16、是其中一个方面,还有的方面就是细节的处理问题,不过这一点该系统还是处理的比较好,比如说订票的时候,会提前判断余票数,并将余票数和订票数进行数目的对比,小于或等于的时候才可以顺利的加入到订票行列,大于的时候,则会继续查询,大于的时候,有多少张是可以加入订票行列,而又有多少张只能加入到候补行列。退票的时候也是一样,也会有细节处理的部分,退票时如果候补行列中有人,会自动询问是否将该人加入到订票行列,这也是比较智能的地方。这门课的课设虽然是数据库课程设计,但其实对于数据结构的考察也是有的,数据库在数据结构的范围中可以看成是一种加强版的线性表的结构,也就是针对这张表来进行增删改查,实际上还帮助我们简化了自己通过编程去管理表结构的步骤,所以说,这次的课程设计的覆盖面也是很广的,做一个课程设计能够学到多方知识。总而言之,这次的课程通过这么多天一个一个的敲进去,提高了我的动手能力,也让我对开发系统有了初步的认识。以后还是要多写程序来提高自己的编程和设计能力。

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2