




免费预览已结束,剩余20页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库课程设计报告 -航空售票管理信息系统目 录一:系统开发平台4二、数据库规划42.1 任务陈述42.2 任务目标4三、系统定义53.1 系统边界53.2 用户视图5四:需求分析64.1 用户需求说明64.1.1 数据需求64.1.2 事务需求74.2 系统需求说明84.2.1软件环境84.2.2硬件环境84.2.3初始数据库大小84.2.4数据库增长速度84.2.5记录查找的类型和平均数量84.2.6性能94.2.7安全性9五、数据库逻辑设计95.1 ER图95.2 数据字典95.2.1实体和联系属性95.2.2属性描述105.3 关系表11六、数据库物理设计116.1 索引116.2 视图126.3 安全机制126.3.1系统安全126.3.2数据安全126.4 其他13七、应用程序设计137.1 功能模块137.1.1计算功能137.1.2存储功能137.1.3输入及输出功能137.1.4交互功能137.2 界面设计137.2.1登录界面137.2.2 员工用户界面167.2.3 管理者用户界面187.3 事务设计197.3.1 根据登陆账号直接判断用户类型并呈现不同视图197.3.2 通过内嵌JavaScript让用户直接选择日期,而不用手动输入207.3.3 通过选择表格中的某一单元格并对其进行修改实现了对数据库数据的修改(删除类似)20八、测试和运行218.1 首先是登陆的测试21经测试,可以根据用户名正常判断身份进行登陆。218.2业务员登陆后查询航班的测试228.3业务员登陆后添加新客户的测试228.4业务员登陆后修改客户资料的测试228.5业务员登陆后删除客户资料的测试238.6选择日期时弹出日期选择框的测试238.7航班统计报表管理的测试238.8航班统计打印报表的测试238.9 最后是性能的测试24九、总结24_附. 参考文献24一:系统开发平台题目:航空售票管理信息系统开发工具:Eclipse数据库:SQL Server 2008操作系统:Windows7二、数据库规划2.1 任务陈述在日常的航空售票过程中,需要对航班信息、机票资源、客户信息、员工业绩进行管理,利用航空售票管理信息系统及时了解各个环节中信息的变更,有利于提高管理效率。一套功能强大、使用起来简单便捷的航空售票管理软件,适用于所有航空售票处(公司、中心、点)对于客户资料和购送票情况进行高效管理。主要功能:快速查询、任意组合条件查询航班信息、机票资源以及公司员工或客户信息(如根据任意电话号码快速定位到某一客户);录入客户信息、购票明细数据;对客户累计购票情况、业务员的业绩进行统计分析;制作各种客户资料报表和客户购票统计报表,且表格的制作具有较强的可扩充性;控制操作员权限、设置密码。系统开发的总体任务是实现航空管理过程中各种信息的系统化、规范化和自动化。2.2 任务目标实现航空售票过程的正常快速高效的运作,量化地考核公司员工的日常工作。控制(添加,更新,删除)有关航班的信息;控制(添加,更新,删除)有关机票的信息;控制(添加,更新,删除)有关客户的信息;控制(添加,更新,删除)有关公司员工的信息;查询特定条件的航班的信息;查询特定条件的机票资源的信息;查询特定条件的公司员工信息;查询特定条件的客户信息;统计有关客户的信息;统计有关公司员工的信息;统计有关航班的信息;统计有关机票资源的信息;制作客户购票统计报表。三、系统定义3.1 系统边界航空售票管理信息系统员工(worker)客户(customer)机票(ticket)航班(flight)机票票价(ticket_type)销售、查询、更新购买、查询查询、更新决定查询查询航班信息管理系统查询人事管理系统查询3.2 用户视图 用户视图功能需求客户查看指定航班信息查看指定机票信息查看指定机票票价信息查看购票记录信息员工查看指定航班信息查看指定机票信息查看指定机票票价信息查看指定售票记录信息查看指定客户信息录入新客户信息更新客户信息删除客户信息管理者查看指定航班信息查看指定机票信息查看指定票价信息查看指定员工信息查看员工售票记录信息录入新航班信息录入新机票信息录入新机票票价信息录入新员工信息更新航班信息更新机票信息更新票价信息更新员工信息删除航班信息删除机票信息删除机票票价信息删除员工信息注:机票票价信息是指指定航班指定类型的机票票价信息。四:需求分析4.1 用户需求说明4.1.1 数据需求()客户视图:客户基本信息:身份证号,姓名,手机号码,编号(UID)购票记录信息:时间,票价,机票编号,办理业务员(WID),购票客户(UID),付费方式航班信息:航班号,出发城市,抵达城市,出发时间,抵达时间,航班容纳人数机票信息:航班号,座次,机票类型,机票编号(TID)票价信息:航班号,机票类型,全票票价注:身份证号和UID唯一,UID由系统自动生成,可以决定多条购票记录信息。购票记录由机票编号可以唯一确定。航班信息由航班号唯一确定。票价信息由航班号唯一确定。机票信息由机票编号唯一确定,同一航班号可以对应不同的机票编号。客户只允许对上述信息进行查询,不可以进行修改操作。()业务员视图:员工基本信息:姓名,职位,编号(WID)航班信息:航班号,出发城市,抵达城市,出发时间,抵达时间,航班容纳人数机票信息:航班号,座次,机票类型,机票编号(TID)票价信息:航班号,机票类型,全票票价售票记录信息:时间,票价,机票编号,办理业务员(WID),购票客户(UID),付费方式客户基本信息:身份证号,姓名,手机号码,编号(UID)注:员工信息中WID唯一,由系统自动生成,可以决定多条售票记录信息。售票记录由机票编号可以唯一确定。业务员只允许对客户基本信息进行修改,对其他信息只允许其查看。()管理者视图:客户基本信息:身份证号,姓名,手机号码,编号(UID)员工基本信息:姓名,职位,编号(WID)售票记录信息:时间,票价,机票编号,办理业务员(WID),购票客户(UID),付费方式航班信息:航班号,出发城市,抵达城市,出发时间,抵达时间,航班容纳人数机票信息:航班号,座次,机票类型,机票编号(TID)票价信息:航班号,机票类型,全票票价用户管理信息:用户名,密码,权限注:用户名作为用户管理信息的唯一标识,管理者可以创建、删除用户,更改用户权限。此外,管理员对上述除客户信息外的信息,均可修改,对客户信息只具有查询权限。4.1.2 事务需求()客户视图:数据查询:查看指定航班信息查看指定机票信息查看指定机票票价信息查看购票记录信息()业务员视图:数据查询:查看指定航班信息查看指定机票信息查看指定机票票价信息查看指定售票记录信息查看指定客户信息数据更新:录入新客户信息更新客户信息删除客户信息()管理者视图:数据查询:查看指定航班信息查看指定机票信息查看指定票价信息查看指定客户信息查看指定员工信息查看员工售票记录信息数据更新:录入新航班信息录入新机票信息录入新机票票价信息录入新员工信息更新航班信息更新机票信息更新票价信息更新员工信息删除航班信息删除机票信息删除机票票价信息删除员工信息4.2 系统需求说明 4.2.1软件环境软件环境需要支持Window操作系统,及SQL Server商业数据库4.2.2硬件环境Petium(R) 4 CPU 1.80GHz 1.82 GHz, 504MB内存4.2.3初始数据库大小初始数据库包含:3个航班班次,约300张机票资源,20名客户,10名员工,5名管理者。4.2.4数据库增长速度航班班次为每年增加20个班次左右,同时删除20个班次左右;机票的变化随同航班变化应保持基本稳定不变的趋势;客户为每年增长5%左右;此外每年新录用200名员工左右,同时有200名左右的员工退休或被辞退;每年新录用50名左右的管理者,同时有50名左右的管理者退休或被辞退。4.2.5记录查找的类型和平均数量查询航班信息的情况:大约每天200次查询机票信息的情况:大约每天200次查询票价信息的情况:大约每天100次查询客户信息的情况:大约每天20次查询员工信息的情况:大约每天20次查询送票记录的情况:大约每天10次查询售票记录的情况:大约每天10次查询购票记录的情况:大约每天50次4.2.6性能单个记录查询时间少于1秒,高峰期少于5秒多个记录查询时间少于5秒,高峰期少于10秒更新/保存记录时间少于1秒,高峰期少于5秒4.2.7安全性每个用户在进入系统时都必须有口令保护;为每个类型的用户分配特定的用户视图,提供特定的访问权限;不同用户根据其事先定义的角色不同进入不同的用户视图界面。五、数据库逻辑设计5.1 ER图客户机票员工航班机票票价管理管理售、送属于购买属于5.2 数据字典 5.2.1实体和联系属性A、实体集航班信息flight:航班号flight_num,出发城市startcity,抵达城市arrivecity,出发时间starttime,抵达时间arrivetime,航班可容纳人数capability;机票信息ticket:机票编号ticket_num,航班号flight_num,座次seat_num,机票类型ticket_type;机票票价ticket_type:航班号flight_num,机票类型ticket_type,全价票价full_price;客户customer:客户编号UID,客户姓名Cname,手机号码phonenumber,身份证号ID;员工worker:员工编号WID,员工姓名Wname,职位position;用户Administrator:用户名yonghuming,密码mima,权限quanxian。B、联系集售票记录信息sell:机票编号ticket_num,客户编号UID,员工编号WID,售票时间selltime,票价sell_price,付费方式payment;5.2.2属性描述实体集属性类型及大小允许空flight航班号flight_numvarchar(10)出发城市startcityvarchar(20)抵达城市arrivecityvarchar(20)出发时间starttimesmalldatetime抵达时间arrivetimesmalldatetime航班可容纳人数capabilitytinyintticket机票编号ticket_numsmallint航班号flight_numvarchar(16)座次seat_numvarchar(8)机票类型ticket_typechar(6)ticket_type航班号flight_numvarchar(10)机票类型ticket_typevarchar(6)全价票价full_pricesmallintcustomer客户编号UIDsmallint客户姓名Cnamevarchar(10)手机号码phonenumbervarchar(11)身份证号IDchar(18)worker员工编号WIDsmallint员工姓名Wnamevarchar(10)职位positionvarchar(10)Administrator用户名yonghumingCHAR(8)密码mimaCHAR(8)权限quanxianCHAR(8)联系集属性类型及大小允许空sell机票编号ticket_numsmallint客户编号UIDsmallint员工编号WIDsmallint售票时间selltimesmalldatetime票价sell_pricesmallint付费方式paymentvarchar(6)5.3 关系表六、数据库物理设计6.1 索引使用查询分析器运行:USE aviationDBCC SHOWCONTIG WITH TABLERESULTS, ALL_INDEXES可以得到aviation数据库中全部索引的相关信息,其中用户所建表的部分信息如下:ObjectNameIndexNameadministratorPK_administratorflightPK_flightticketPK_ticketticketflight_keyticket_typePK_ticket_typecustomerPK_customerworkerPK_worker1、 主键索引:表administrator:PK_administrator表flight:PK_flight表ticket:PK_ticket表ticket_type:PK_ticket_type表customer:PK_customer表worker:PK_worker、表ticket中的flight_key索引:因为在日常对机票的查询中,通常是对某一航班的机票售出情况、剩余情况进行查询,需要经常性地将flight表与ticket表作自然连接以查询满足特定条件的机票资源,时常作连接代价耗费太大,故可创建索引以加快查找速度。6.2 视图(可选)6.3 安全机制6.3.1系统安全为客户、员工和管理者在数据库中存储登录口令,登录时必须经验证一致才可进入系统;不同的用户对数据库的操作权限有严格限制,防止误删和误改。6.3.2数据安全程序启动需要经过SQL Server登陆认证,登陆ID和密码正确方可启动程序。在该系统中,任何有关删除或添加数据的操作都需要二次确认才可以在数据库中真正执行。通过高级语言应用程序的限制,不同的用户只能查询修改其有权访问的数据。6.4 其他考虑到对于航班、售票员的售票记录信息查看需要连接数据库,所以在程序中加上了打印的功能,可以选择性的打印从而长久保存信息。七、应用程序设计7.1 功能模块7.1.1计算功能统计票务销售情况:. 某一时间、某一特定航班、某种特定类型的机票的销售状况。. 某一时间、某一特定业务员各航班机票的销售状况。7.1.2存储功能存储有关对象的具体信息(如客户信息、员工信息、管理者信息、机票信息、航班信息等)及航班与机票,员工与客户,员工与机票,机票对应的机票类型等关系,并能方便快速地实现对以上信息的查询、删除、增加、修改等操作。7.1.3输入及输出功能输入的限定信息等数据经处理后,可以在显示器上按事先定义的格式显示。如:客户可以方便地根据自己的需求查询特定的航班、票务信息;员工可查看客户的信息等。另外还能通过指定设备存储统计报表,以便打印或长期保存。7.1.4交互功能本系统具有仿Windows窗口交互界面,会在工作人员进行输入等操作时给予必要的提示,或者在操作发生错误时给予必要的提示和帮助。7.2 界面设计7.2.1登录界面7.2.2新客户注册界面7.2.3客户用户界面航班信息查询界面机票信息查询界面.机票票价信息查询界面客户购票记录查询界面.时间输入的选择框通过选择而不是让用户输入的方式确保日期格式的一致性。7.2.2 员工用户界面1.信息查询系统之:我的售票记录2.信息查询系统之:客户信息查询3.客户管理系统界面4.添加新客户界面5.更新客户界面通过输入客户信息查询到相应结果,可以直接在结果显示中更改客户信息,点击“修改”按钮进行提交。6.删除客户界面通过输入客户信息查询到相应结果,可以直接选择某条结果记录,点击删除则从数据库中将其删除。7.2.3 管理者用户界面1.信息查询系统与客户信息查询、员工信息查询系统类似2.信息管理系统界面各管理功能的具体实现与员工视图中的客户信息管理模块完全相似,为防止报告过长,在此不再赘述。3.生成报表系统界面选中通过设定特定时间查询得到的结果,点击“查询该航班各类型票务销售统计”可以在下方的表格中看到对应查询结果。A航班售票统计报表界面B业务员售票统计报表界面 具体操作与A类似。7.3 事务设计7.3.1 根据登陆账号直接判断用户类型并呈现不同视图根据用户账号直接判断身份可以少去选择身份这一步骤,使得程序的使用更加便捷,可控性更强。String username, password,quanxian;ResultSet rs = this.executeQuery(select *from administrator);while (rs.next() & ii = 0) username = rs.getString(yonghuming).trim();password = rs.getString(mima).trim();quanxian = rs.getString(quanxian).trim();if (username.equals(zhanghao1) & password.equals(mima1) ii = 1;int uname=Integer.parseInt(username);this.dispose();if(quanxian.equals(客户)new CustomerMenu(username);else if(quanxian.equals(送票员)| quanxian.equals(业务员)new WorkerMenu(username);else if(quanxian.equals(管理员)new ManagerMenu(username);7.3.2 通过内嵌JavaScript让用户直接选择日期,而不用手动输入通过内嵌JavaScript让用户直接选择日期,而不用手动输入,这样避免了用户所输入的日期格式不规范,从而不必对用户输入的日期进行规范化处理,降低了程序的复杂性。textField_10.addMouseListener(new MouseAdapter() Override public void mouseClicked(MouseEvent e) int clickTimes = e.getClickCount(); if (clickTimes = 1) DateChooser mp=new DateChooser(); shuidian=10; JFrame jf=new JFrame(输入日期); jf.add(mp,BorderLayout.CENTER); jf.add(new JButton(选择日期),BorderLayout.NORTH); jf.pack(); jf.setLocationRelativeTo(null); jf.setVisible(true); jf.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE); 通过直接点击进行日期的选择。 );DateChooser类代码比较复杂,在此不再附此程序。7.3.3 通过选择表格中的某一单元格并对其进行修改实现了对数据库数据的修改(删除类似)此功能大大降低了修改信息的复杂度,修改过程简单、直观、明了,符合用户的操作习惯,更具人性化。以下是获取双击后选中的单元格的行数的方法:table.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e) if (e.getClickCount() = 2) if(table.getValueAt(table.getSelectedRow(),0)!=null) String s = (String) table.getValueAt(table.getSelectedRow(),0); JDialog jd = new JDialog(); jd.setSize(800, 600); jd.setLocationRelativeTo(null); jd.show(); );以下是获取所选中的单元格对应的行号后所要执行的SQL语句。rs = this.executeQuery(update customer set Cname=+rowData1ii1+,+phonenumber=+rowData1ii2+,+ID=+rowData1ii3+ where UID=+rowData1ii0+);八、测试和运行8.1 首先是登陆的测试经测试,可以根据用户名正常判断身份进行登陆。8.2业务员登陆后查询航班的测试其他诸如航班、机票、票价、我的售票记录等查询与此类似,经测试,也可以正常进行。8.3业务员登陆后添加新客户的测试8.4业务员登陆后修改客户资料的测试8.5业务员登陆后删除客户资料的测试8.6选择日期时弹出日期选择框的测试8.7航班统计报表管理的测试8.8航班统计打印报表的测试其他如业务员售票的报表打印与此类似。8.9 最后是性能的测试单个记录查询时间少于1秒,高峰期少于5秒多个记录查询时间少于5秒,高峰期少于10秒更新/保存记录时间少于1秒,高
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 怎么写数学测试题及答案
- 2025年森林环境考试题目及答案
- 燃煤发电环保设施建设方案
- 高级绿化考试试题及答案
- 社会保险基金应收账款质押担保及区块链技术应用合同
- 金融行业员工岗位调整及劳动合同完善协议
- 环保项目环评咨询与实施合同
- 离婚协议书贷款还款及财产分割执行细则合同
- 企业环境管理体系建设与节能减排方案
- 物业让与担保及能源管理系统建设合同范本
- 【数学】角的平分线 课件++2025-2026学年人教版(2024)八年级数学上册
- 阿迪产品知识培训内容课件
- 幼儿园副园长岗位竞聘自荐书模板
- 第1课 独一无二的我教学设计-2025-2026学年小学心理健康苏教版三年级-苏科版
- T∕CEPPEA5004.5-2020核电厂常规岛施工图设计文件内容深度规定第5部分仪表与控制
- 反对邪教主题课件
- 化工阀门管件培训课件
- 新疆吐鲁番地区2025年-2026年小学六年级数学阶段练习(上,下学期)试卷及答案
- TCT.HPV的正确解读课件
- 白酒生产安全员考试题库及答案解析
- 广东春考试卷及答案
评论
0/150
提交评论