版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目录1、绪论12、数据库的设计22.1 建立数据库和表22.2设计表23、配置ODBC 数据源34、系统设计64.1、系统总框图64.2、浏览模块74.3、查询模块74.4、添加模块84.5、修改模块94.6、删除模块95、VC_MFC界面设计105.1、工程的创建105.2、各模块界面设计116、程序实现147、系统调试198、心得体会219、参考文献221、绪论当今社会中,计算机的使用已经深入到日常工作和生活的方方面面。Windows 系统的推出使电脑从高雅的学术殿堂走入了寻常百姓家,各行各业的人们无须经过特别的训练就能够使用电脑完成许许多多复杂的工作。然而,虽然现在世界上已经充满了多如牛
2、毛的各种软件,但它们依然不能满足用户的各种特殊需要,人们还不得不开发适合自己特殊需求的软件。我们都知道,对于航班信息查询系统是飞机交通不可缺少的部分,它的内容对航空公司管理来说至关重要,所以航班信息查询系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。而使用计算机对学生信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、存储量大、保密性好等。这些优点能够极大地提高航班信息管理的效率,也是学校科学化、正规
3、化管理的重要途径。本次设计主要采用了VC+6.0和SQL Server 2000这两个软件来实现对航班信息的查询、修改、存储等功能。 关键词:航班信息查询系统,VC+6.0,SQL SERVER 20002、数据库的设计2.1 建立数据库和表首先打开SQL 2000企业管理器,创建一个名为”hbxx”的数据库,并新建一个名为“航班信息”的表。如图2.1:图2.1 新建的数据库和表2.2设计表由于我的电脑安装的 是Windows7操作系统,所以不能直接在企业管理器里面设计一个新建的表,就需要在查询分析器用SQL语言来设计那个新建的表的各个列名以及属性,如图2.2.1;但是在通过查询分析器设计表之
4、后,可以直接在企业管理器里直接修改新建表的属性,还可以直接在新建表里面写自己要写入的内容,如图2.2.2:图2.2.1 用SQL语言设计新建表属性图2.2.2 在企业管理器里面想新建的表输入内容3、配置ODBC 数据源在电脑上,点击开始-控制面板-管理工具-ODBC数据源,找到数据源之后,双击图标,然后会出现图3.1的一个框,在最左边选择用户DSN,再在中间那个框里名称的那一列,任意点击一个名称,再点击添加图标,这次会出现图3.2那样一个界面,向下拉滚动条,选择SQL Server,单击完成按钮,出现图3.3那样的界面,在名称后的框里写入hbxx,即之前在SQL 2000的企业管理器里创建的数
5、据库名称,服务器那里选择(local),单击完成,这次出现图3.4那样的界面,再单击测试数据源按钮,如果配置成功的话,就会出现图3.5的界面,说明配置ODBC数据源成功,以上提到的图请往下看:图3.1图3.2图3.3图3.4图3.54、系统设计根据需要,本系统分为六个子功能模块,分别为浏览、查询、添加、修改、删除、返回,以下是系统总框图以及各子功能模块流程图:4.1、系统总框图该框图包括六个部分,一个主界面和五个子功能模块,如图4.1:航空信息查询系统主界面返回模块删除模块修改模块添加模块查询模块浏览模块图4.1 系统框图4.2、浏览模块点击浏览按钮,首先读取数据库里的数据,将其赋给一个类对象
6、指针,然后判断赋值是否成功,不成功返回继续执行赋值操作,若赋值成功,则将数据库中表里的的内容一行一行的显示在主界面上,直到把里面内容全部显示完,然后结束,流程图如图4.2:点击浏览按钮读取数据库表中内容将数据赋给一个类对象,并定义一个该对象的指针空:指针指向下一个位置,再次读取空判断指针是否为空不空不空:执行显示程序结束图4.2 浏览流程图4.3、查询模块点击查询按钮,输入查询条件,判断是否有匹配的记录,若无则返回输入条件,若有,则打开记录并显示出来,然后结束,如图4.3:点击查询按钮输入查询条件无判断有无匹配的记录无:返回有有:打开记录显示终止图4.3 查询流程图4.4、添加模块点击添加按钮
7、,输入要添加的内容,执行添加程序,再调用显示程序,然后结束,如图4.4:点击添加按钮键入要添加的内容执行添加程序显示添加内容结束图4.4 添加流程图4.5、修改模块点击修改按钮运行程序,点击修改按钮,查找并显示出来,修改并保存,再显示,然后结束,如图4.5:查找要修改的记录并且显示修改并保存再一次查询,找出修改后的信息以及没有修改的记录显示结束图4.5 修改流程图4.6、删除模块点击删除按钮运行程序,点击删除按钮,查找到要删除的记录并显示,执行删除程序,再显示剩余的记录,然后结束,如图4.6:查找记录并显示执行删除程序点击浏览点击返回结束图4.6 删除流程图5、VC_MFC界面设计MFC的界面
8、主要包括了六个模块,一个主模块,也就是整个系统的主界面。五个子模块,就是每一个功能实现的界面。子模块包括:浏览、查询、添加、修改、删除,具体设计步骤如下:5.1、工程的创建创建的过程在步骤2中选择“查看数据库不使用文件支持”,如图5.1.1;并且单击“数据源”,选择之前在SQL里创建的数据库hbxx,如图5.1.2;之后点击OK,选择名为“航班信息”的表,如图5.1.3;点击OK,再点击“完成”即可成功创建我们需要的工程,图如下:图5.1.1 选择查看数据库不使用文件支持图5.1.2 选择数据库hbxx图5.1.3 选择表“航班信息”5.2、各模块界面设计5.2.1、主界面主界面主要由一个列表
9、框,一个静态文本框,六个按钮构成,如图5.2.1:图5.2.1 主界面各控件属性如表5.2.1:Control IDsTypeMemberIDC_BUTTON1(浏览)IDC_BUTTON2(查询)IDC_BUTTON3(添加)IDC_BUTTON4(修改)IDC_BUTTON5(删除)IDC_BUTTON6(返回)IDC_LIST2CLisCtrlM_Grid表5.2.1 控件属性5.2.2、浏览界面浏览界面就是主界面里的那个列表框,即IDC_LIST2,所以不再赘述。5.2.3、查询界面查询界面主要由八个静态文本和八个编辑框构成,如图5.2.3,其控件属性如表5.2.3:图5.2.3 查询
10、界面Control IDsTypeMemberIDC_EDIT1(航班号)CStringm_1IDC_EDIT2(始发地)CStringm_2IDC_EDIT3(目的地)CStringm_3IDC_EDIT4(起飞时间)CStringm_4IDC_EDIT5(到达时间)CStringm_5IDC_EDIT6(用时)CStringm_6IDC_EDIT7(里程数)CStringm_7IDC_EDIT8(票价)CStringm_8IDCANCEIDOK表5.2.3 控件属性由于添加、删除、修改的界面以及控件属性与查询的都一样,所以就不再加以说明。6、程序实现浏览程序:while(!m_pSet-I
11、sEOF() m_pSet-MoveNext();m_pSet-GetRecordCount();m_pSet-MoveFirst();int i=0; m_Grid.DeleteAllItems(); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,航班号); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,始发地); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,目的地); m_Grid.InsertItem(i, );m_Grid.SetItemTe
12、xt(i+,0,起飞时间); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,到达时间); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,用时); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,里程数); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,票价); while(!m_pSet-IsEOF() m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,m_pSe
13、t-m_column1); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,m_pSet-m_column2); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,m_pSet-m_column3); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,m_pSet-m_column4); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,m_pSet-m_column5); m_Grid.InsertItem(i, )
14、;m_Grid.SetItemText(i+,0,m_pSet-m_column6); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,m_pSet-m_column7); m_Grid.InsertItem(i, );m_Grid.SetItemText(i+,0,m_pSet-m_column8); /将记录集指针移动到下一条记录m_pSet-MoveNext();m_pSet-MoveFirst();查询程序:void CMy4View:OnButton2() / TODO: Add your control notification han
15、dler code hereCsearchDlg search; UpdateData(true);if(search.DoModal()=IDOK) m_pSet-Edit(); search.m_1.TrimLeft(); /将字符串最前面的空格修整掉search.m_2.TrimLeft(); /将字符串最前面的空格修整掉search.m_3.TrimLeft(); /将字符串最前面的空格修整掉if (search.m_1.IsEmpty()&search.m_2.IsEmpty()&search.m_3.IsEmpty()MessageBox(要查询的条件不能为空!);return;i
16、f (m_pSet-IsOpen()m_pSet-Close();/ 如果记录集打开,则先关闭if(!(search.m_1.IsEmpty()&!(search.m_2.IsEmpty()&(search.m_3.IsEmpty()m_pSet-m_strFilter.Format(航班号=%s AND 始发地=%s AND 目的地=%s ,search.m_1,search.m_2,search.m_3);m_pSet-m_strSort = 航班号 ASC,始发地 ASC,目的地 ASC; elsem_pSet-m_strFilter.Format(航班号=%s OR 始发地=%sOR
17、目的地=%s ,search.m_1,search.m_2,search.m_3); / m_strFilter设置对记录的过滤m_pSet-m_strSort = 航班号 ASC,始发地 ASC,目的地 ASC; / m_strSort设置对记录的排序.按number的降序排列记录 m_pSet-Open(); / 打开记录集.Open函数在构造SELECT语句时,/会把m_strFilter和m_strSort的内容放入SELECT语句的WHERE和ORDER BY子句中if (!m_pSet-IsEOF() m_pSet-Requery(); / 如果打开记录集有记录UpdateData
18、(false);OnInitialUpdate();elseMessageBox(没有查到你要找的航班记录!); 添加程序:void CMy4View:OnButton3() / TODO: Add your control notification handler code hereCAddDlg Add;if(Add.DoModal()=IDOK)m_pSet-AddNew(); m_pSet-m_column1=Add.m_1; m_pSet-m_column2=Add.m_2; m_pSet-m_column3=Add.m_3; m_pSet-m_column4=Add.m_4; m_
19、pSet-m_column5=Add.m_5; m_pSet-m_column6=Add.m_6; m_pSet-m_column7=Add.m_7; m_pSet-m_column8=Add.m_8; m_pSet-Update(); m_pSet-Requery(); OnInitialUpdate();修改程序:void CMy4View:OnButton4() / TODO: Add your control notification handler code hereCchangeDlg change;OnButton2() ;change.m_1=m_pSet-m_column1;
20、 change.m_2=m_pSet-m_column2; change.m_3=m_pSet-m_column3; change.m_4=m_pSet-m_column4; change.m_5=m_pSet-m_column5; change.m_6=m_pSet-m_column6; change.m_7=m_pSet-m_column7; change.m_8=m_pSet-m_column8; if(change.DoModal()=IDOK) m_pSet-Edit(); m_pSet-m_column1=change.m_1; m_pSet-m_column2=change.m_
21、2; m_pSet-m_column3=change.m_3; m_pSet-m_column4=change.m_4; m_pSet-m_column5=change.m_5; m_pSet-m_column6=change.m_6; m_pSet-m_column7=change.m_7; m_pSet-m_column8=change.m_8; m_pSet-Update(); UpdateData(FALSE); m_pSet-m_strFilter.Format(航班号!=00000);if (!m_pSet-IsEOF()m_pSet-Requery(); / 如果打开记录集有记录
22、UpdateData(false);OnButton1();删除程序:void CMy4View:OnButton5() / TODO: Add your control notification handler code hereCdeleteDlg Delete;OnButton2() ;Delete.m_1=m_pSet-m_column1; Delete.m_2=m_pSet-m_column2; Delete.m_3=m_pSet-m_column3; Delete.m_4=m_pSet-m_column4; Delete.m_5=m_pSet-m_column5; Delete.m
23、_6=m_pSet-m_column6; Delete.m_7=m_pSet-m_column7; Delete.m_8=m_pSet-m_column8; if(Delete.DoModal()=IDOK) CRecordsetStatus status; m_pSet-GetStatus(status); m_pSet-Delete(); if(status.m_lCurrentRecord=0) m_pSet-MoveNext(); else m_pSet-MoveFirst(); UpdateData(FALSE);m_pSet-MoveFirst();OnInitialUpdate(); 返回程序:void CMy4View:OnButton6() / TODO: Add your control notification handler code here m_pSet-m_strFilter.Format(航班号!=00000);if (!m_pSet-IsEOF() m_pSet-Requery(); / 如果打开记录集有记录 UpdateData(false);OnButton1();7
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 福建省宁德市部分县市2024-2025学年七年级上学期期中质量检测道德与法治试卷(含答案)
- 精细化管理在会计工作中的实践计划
- 开展市场拓展与渠道建设计划
- 关注家长参与教育的有效途径计划
- 突发事件处置策略培训
- 急救科室医疗整顿计划
- 服务技巧提升训练培训
- 河北省部分学校2024-2025学年高三上学期11月阶段调研检测二 历史 含答案
- 建筑供配电与照明技术 课件全套 刘义艳 第1-10章 基础知识、供配电系统的负荷计算- 建筑电气BIM模型创建
- 实验室技能培训
- XX小学学生心理健康档案(一生一案)
- 地质勘探中的安全生产考核试卷
- 期中(1-4单元)(试题)-2024-2025学年六年级语文上册统编版
- 【八上沪科版数学】安徽省合肥市蜀山区名校2023-2024学年八年级上学期期中模拟数学试卷
- 评标专家库系统系统总体建设方案
- 人教版美术八年级上册 第一单元 第1课《造型的表现力》 教案
- 2024年上海市教育委员会科技发展中心拟聘人员历年高频难、易错点500题模拟试题附带答案详解
- 创新实践(理论)学习通超星期末考试答案章节答案2024年
- 2024-2030年中国共享汽车行业市场深度调研及发展趋势与投资前景研究报告
- 2024-2030年中国门禁机市场发展趋势及前景运行战略规划报告
- 2024世界精神卫生日共建共治共享同心健心安心宣传课件
评论
0/150
提交评论