基于CNET的公交查询系统设计与实现毕业论文_第1页
基于CNET的公交查询系统设计与实现毕业论文_第2页
基于CNET的公交查询系统设计与实现毕业论文_第3页
基于CNET的公交查询系统设计与实现毕业论文_第4页
基于CNET的公交查询系统设计与实现毕业论文_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 . . . 基于C#.NET的公交查询系统设计与实现目录摘要VAbstractVI第1章绪论11.1前言11.1.1系统开发背景11.2选题目的与意义11.2.1选题目的11.2.2选题意义21.3系统开发环境与简介21.3.1硬件部分21.3.2软件部分2第2章需求分析42.1需求分析概述42.1.1需求分析的基本任务一个阶段42.2实体联系图(E-R图)52.2.1实体联系图概述52.2.2符号系统52.2.3公交实体联系图62.3层次方框图72.4数据流图(DFD)82.4.1数据流图概述82.4.2符号系统82.4.3画图原则92.4.4公交DFD图92.5系统功能模块划分112.5

2、.1用户查询模块112.5.2管理员模块11第3章详细设计123.1系统详细设计123.1.1系统总体功能设计123.1.2系统各功能模块详细设计123.2.数据库设计123.2.1数据库设计步骤133.2.2数据库设计原则143.3公交数据库详细设计153.3.1公交站点的数据库设计153.3.2公交线路的数据库设计153.3.3公交线路信息数据库设计163.3.4公交城市信息数据库设计173.3.5公交管理员信息数据库设计183.4数据库关系图19第4章实现214.1系统界面设计与实现214.2用户功能模块总体设计224.2.1用户主界面功能模块设计与实现234.2.2线路查询模块244.

3、2.3站点查询254.2.4公交换乘查询264.3管理员功能模块274.3.1系统管理员登陆界面设计284.3.2添加路线和站点信息294.3.3删除线路和站点314.3.4修改路线站点信息32第5章结论不足和展望345.1结论345.2不足345.3展望34参考文献36致37附件38附件1.线路查询模块实现代码38附件2.站点查询实现代码40附件3.公交换乘查询代码42附件4.管理员登陆代码44附件5.删除站点代码45附件6.修改信息代码46附件7.增加信息代码48毕业论文(设计)原创性声明本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作与取得的研究成果。据我所知,除文中已经注明

4、引用的容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示意。 作者签名: 日期:毕业论文(设计)授权使用说明本论文(设计)作者完全了解*学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。学校可以公布论文(设计)的全部或部分容。的论文(设计)在解密后适用本规定。 作者签名: 指导教师签名:日期: 日期:注意事项1.设计(论文)的容包括:1)封面(按教务处制定的标准封面

5、格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。4.文字、图表要求:1)文字通顺,语言流畅,书写字迹工整,打印字体与大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规。图表整洁,布局合理,

6、文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档5.装订顺序1)设计(论文)2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订3)其它摘要随着“公交先行,节能减排,低碳生活”概念的提出,使得各大城市的公共交通得到迅速的发展,因此乘客需要实时的查询公交系统的信息以便出行,在此背景下,本文最主要采用vs2010来实现公交查询系统的设计采用SQL Server2008数据库来实现系统所需的数据需求。在公交查询系统设计过程中考虑用户查询的模块为:线路查询、站点查询

7、、换乘查询,管理员模块则应该包括对数据增、删、查、改等操作,对于数据库设计应该体现出数据之间明确的联系关系。关键词:数据库、vs2010、公交查询、管理员AbstractAs the bus first, energy conservation and emissions reduction, low carbon life concept is put forward, make the city public transportation to get rapid development, so the passengers need to real-time information qu

8、ery of public transportation to travel, in this context, in this paper, the main vs2010 is used to realize the bus query system design using SQL Server2008 database to realize data requirements required by the system. At the bus query system design considering user query module is: in the process of

9、 route query, site query, change to the query, the administrator module should include the data to add, delete, check, change, such as operation, for the database design should embody the definite contact relationship between data. Key words: database, vs2010, bus query, administrator43 / 50第1章 绪论1.

10、1 前言1.1.1 系统开发背景出行是人类生活的基本活动之一。城市的快速发展、科技的发展以与环保意识的增强,对城市公共交通的发展趋势的快速性、舒适性、便捷性、环保等方面提出更高要求。先进的信息技术也促进了公共交通技术的发展,从而为乘客提供了良好的出行条件,并且能够逐渐满足市民出行多样化的交通需求。为城市的进一步发展提供便捷条件,对于城市公共交通来说,必然要优先发展公交,因此,公共交通的地位也不断得到提升。 公交换乘系统的算法研究与应用D .太原:中北大学.2009:28-31 赵敏2005年以来,中国先后印发了关于优先发展城市公共交通的意见等系列文件正式确立了公交优先发展的战略思想,为优先发展

11、城市公共交通指明了方向,有力推动了中国城市公交事业的发展。截止2009年底到全国公共汽电车运营线路网总长度28.9万公里,公交专用车道里程达7452公里,10余个城市开通运营快速公交路线,公交运输总量达到780亿人次。 崛起中的中国城市基础设施建设发展研究 黄新文随着城市公交的快速发展和节能减排的理念升入人心,使得人们的出行越来越选择以公交的方式出行,并且由于城市的人口居住以与就业形态的已经形成,协调好公交的换乘、增加交通可达性势在必行。随着城市的发展,必然带来道路基础设施的扩展,公交线路随之增长,有些城市多达上百条,以至于居民难以掌握大量的公交信息,为出行带来了一定的困扰。因而,公交查询系统

12、便应运而生。1.2 选题目的与意义1.2.1 选题目的随着节能减排低碳生活的提出,以与公交先行的理念日渐深入人心,建立一个公交查询系统是公众出行的迫切需要人们对于出行的要求增多,对公交系统的需求也逐渐的增加,公交的监督也方便顾客的监督和查询。建立完善的公交线路网也是我国对于公共交通的一个长远计划,而在整个公共交通中公交又占有相当大的比重,建立一个公交查询系统则可以为顾客的出行提供很直接、便捷的出行方案。1.2.2 选题意义市是省省会,是我国陆开放城市与西南地区的重要的交通通信枢纽、工业基地、商贸和旅游服务城市,城市道路交通的发展从某种意义上讲可以制约或促进整个城市的发展方向。 贵阳市城市交通发

13、展研究 欧艳玲 XX大学博硕论文 2004目前的公共交通现状如下:市区由中心区、小河、龙洞堡、花溪、白云、等地组成,12米以上的道路291.41公里,公交运营车辆截止到2010年12月共计1576辆,市、郊线路150条,车运量达到5.9亿人次,承担了全市约70%的客运量 贵阳市城市公共交通的现状与对策研究。在这种情况下城市公交的查询系统则可以做到:1、城市公交查询系统能够最快、最方便的满足人们的出行需要,帮助人们正确的选择公交出行的线路,提高人们的出行速率。2、城市公交查询系统是智能公交的重要组成部分,智能公交系统是一个整体工程,而公交查询系统则属于智能公交查询系统的软件组成部分。3、作为省会

14、城市则可以帮助外来人员快速的查询到公交信息,提高人们的出行的效率和城市的综合的地位。1.3 系统开发环境与简介 系统开发环境分为两部分1.硬件部分、2.软件部分1.3.1 硬件部分一般电脑配置即可1.3.2 软件部分软件部分包括SQL Server 2008数据库、Microsoft Visual Studio 2010(一)数据库采用SQL Server 2008数据库数据库可以理解为存储数据的仓库。他是按照一定的组织方式存储的相互有关的数据的集合,这些数据不仅彼此关联而且可以动态变化。它具有以下几个特点:1、数据结构化2、数据共享3、数据的独立性5.数据的一致性与正确性在数据库中最核心的一

15、部分为DBMS即数据库管理系统他是使用户能够实现数据加工的数据管理系统,为用户提供以下几个功能:1、建库功能2、数据的操作功能:实现对数据的增、删、查、改等功能 数据库技术与应用SQL Server 2005教程 詹英 主编 清华大学(二)编程软件采用Microsoft Visual Studio 2010Visual Studio是Windows 平台应用程序的开发环境,它是建立在IDE(统一开发环境)的基础之上,可用于开发多种不同类型的应用程序第2章 需求分析2.1 需求分析概述需求分析是软件定义时期的最后一个阶段,需求分析指的是在建立一个新的或改变一个现存的电脑系统时描写新系统的目的、围

16、、定义和功能时所要做的所有的工作。需求分析是软件工程中的一个关键过程。在这个过程中,系统分析员和软件工程师确定顾客的需要。只有在确定了这些需要后他们才能够分析和寻求新系统的解决方法。2.1.1 需求分析的基本任务一个阶段它的基本任务是准确地回答“系统必须做什么?”这个问题。需求分析的任务还不是确定系统怎样完成他的工作,而仅仅是确定系统必须完成那些工作,也就是对目标系统提出完整、准确、清晰、具体的要求 软件工程导论(第五版) 张海藩 编著 清华大学 。具体说需求分析的任务有以下几个方面:(一)、确定对系统的综合要求通常对软件系统有下述几个方面的综合要求:1、功能需求这方面的需求制定系统必须提供的

17、服务。通过需求分析应该划分出系统必须完成的所有功能2、性能需求性能需求指定系统必须满足的定时约束或容量约束,通常包括速度(响应时间、信息量速率) 基于C/S与B/S结合模式的农业专家信息服务平台设计研究 刘涛1 温晓莉2 河北农业科学20103、可靠性和可用性需求可靠性需求定量地指定系统是的可靠性,可用性与可靠性密切相关,它量化了用户可以使用系统的程度,例如:“在任何时候主机或备份机上的机场雷达系统应该至少有一个是可以用的,而且在一个月在任何一台计算机上盖系统不可以用的时间不能超过总时间的2%。”44、出错处理需求5、接口需求6、约束7、逆向需求8、将来可能提出的要求(2)分析系统的数据要求每

18、一个系统在本质上都是处理信息的,系统必须处理的信息与系统得到的信息在很大的程度上决定了系统的“面貌”,因此必须分析系统的数据要求,而分析系统的数据要求通常采用建立数据模型的方法即实体联系图(2.2节)。复杂的数据由许多基本的数据元素组成,数据结构表示数据元素之间的逻辑关系。利用数据字典可以全面的定义数据,但是数据字典不够形象直观。为了提高可理解性,我们可以用层次方框图和Warnier图辅助描绘数据结构。2.2 实体联系图(E-R图)2.2.1 实体联系图概述为了把用户的数据要求清楚、准确的描述出来,系统分析员通常建立一个概念性的数据模型。概念性数据模型是一种面向问题的数据模型,是按照用户的观点

19、对数据建立的模型。它描述了从用户角度看到的数据,它反映了用户的显示环境,而且与在软件系统中的实现方法无关2.2.2 符号系统在实体联系图中包含3种相互关系的信息如表格 1所示:表格 1 ER图符号图形名称描述数据对象数据对象时对软件必须的复合信息的抽象。所谓复合信息是指具有一系列不同性质或属性的事物,仅有单个值的事物(例如,宽度)不是数据对象属性数据对象一般具有若干特征,这些特征就称为数据对象的属性,例如:数据对象“学生”,具 有学号、性别、出生日期和系别等特征,这些就是它的属性。 联系实体之间可能会有各种关系。例如,“学生”与“课程”之间有“选课”的关系。这种实体和实体之间的关系被抽象为联系

20、。在实体联系图中,联系用联结有关实体的菱形框表示,如图1.9所示。联系可以是一对一(1:1),一对多(1:N)或多对多(M:N)的,这一点在实体联系图中 也应说明。例如在大学教务管理问题中,“学生”与“课程”是多对多的“选课”联系联系。 实体-联系方法讲义 2.2.3 公交实体联系图在本文中的公交E-R图如图 21所示:图 21 公交E-R图2.3 层次方框图层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表这个数据的子集,最底层的各个框代表组成这个数据的实际数据元素(不能再分割的元素)。在本文中的公交查

21、询系统层次方框图如图 22所示:图 22 层次方框图2.4 数据流图(DFD)2.4.1 数据流图概述数据流图(DFD)是一种图形化技术,它描绘信息流和数据流从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,他只是描绘数据在软件中流动和被处理的逻辑过程。数据流图是系统逻辑功能的图形表示,即使不是专业的计算机技术人员也容易理解它,因此,他是分析员与用户之间几号的通信工具。此外数据流图设计时只需考虑系统必须完成的基本逻辑功能,完全不需要考虑怎样具体地实现这些功能,因此他也是进行软件设计的很好的出发点。2.4.2 符号系统数据流图通常包含以下几种符号:符号名称说明正方形表示数

22、据的源点或终点圆角矩形代表数据的变换处理开口矩形代表数据存储箭头表示数据流,即特定数据的流动方向2.4.3 画图原则画图原则:(1)数据流图上所有图形符号只限于以上四种基本图例(2)顶层数据流图必须包含4种基本元素;(3)顶层数据流图上的数据流必须封闭在外部实体之间;(4)至少有一个数据输入流和一个数据输出流;(5)在数据流图中必须按层给处理框加编号,该编号表明该加工处;在那一层以与上下层父图与子图的对应关系;(6)规定数据流图与他上一层的一个处理对应,两者的输入数据流和输出数据流必须一致,即父图与子图平衡,还应该在数据流图中缴入必要地说明以帮助用户理解;(7)图上的每个元素都应该有名字,数据

23、流和数据文件名字表明流动的数据是什么,而处理的名字应表明处理做了说明事情。2.4.4 公交DFD图图 23 公交DFD图2.5 系统功能模块划分一个系统可以看成是由多个小模块组成,这些小模块之间应该具有高聚、低耦合的特点:耦合:是对一个软件结构不同模块之间互联程度的衡量。而耦合程度取决于模块时间接口的复杂程度,进入或访问一个模块的点,以与通过接口的数据。耦合包括以下几种:1、数据耦合 2、控制耦合 3、特征耦合 4、公共耦合。聚:聚标志着一个模块各个元素之间的彼此结合程度。聚包括以下几种:1、功能聚 2、顺序聚 3、通信聚 4、过程聚 5、时间聚 6、逻辑聚 7、偶然聚。公交查询系统可以看成是

24、由两个大模块组成即:用户查询模块和管理员模块。2.5.1 用户查询模块用户查询模块主要供用户使用其主要完成的对公交信息的查询,这些查询包括公交站点、公交线路以与公交站点到站点的额查询(公交换乘插叙)并将查询的结果通过一定的方式显示出来,并且需要制定一个“选择框”以便用户进行模糊查询。2.5.2 管理员模块管理员在公交查询系统中拥有最高的权限,它能够对公交信息进行增、删、查、改等一系列工作,当然对于管理员模块需要进行身份验证,当正确以后才能进行操作。第3章 详细设计3.1 系统详细设计系统的详细设计阶段其根本目标是确定应该怎样具体的实现所要求的系统,也就是经过这个阶段的设计工作,应该得到对系统的

25、准确描述,从而在编码阶段可以把整个描述直接翻译为用vs2010编写的程序代码,在这一阶段不是实现软件的具体代码编写3.1.1 系统总体功能设计系统功能详细设计主要表述系统的功能架构如图1.3.1所示图 31 系统功能架构3.1.2 系统各功能模块详细设计对于用户模块来说就是完成对信息的查询功能并返回值如图,对于管理员来说不仅可以查询公交的信息还可以对公交信息进行增、删、查、改等工作如图 32、图 323所示:图 32 功能图 图 33 功能图3.2 .数据库设计数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库与其应用系统,使之能够

26、有效地存储和管理数据,满足各种用户的应用需求,包括数据管理需求和数据操作需求。 数据库系统概论M.高等教育, 王珊、萨师煊 2008.12数据库设计的好坏,直接影响到系统的功能能否实现,数据操作是否简单。设计良好的数据库很容易使用,并且能够保护数据的有效性。而设计不好的数据库虽然能够发挥相当的作用,但是可能会导致数据的无效、错误或者丢失。 公交线路查询系统的数据库设计 王军 武威职业学院3.2.1 数据库设计步骤建立了数据库的步骤:数据库系统的生存期可划分为:需求分析、概念结构设计、逻辑结构设计、物理结构设计、实施和运行维护七个阶段,而需求分析和概念结构设计可以独立于任何数据库管理系统而进行。

27、逻辑结构设计和物理结构设计与选用的 DBMS(database management system)密切相关。我们通常把前五个阶段称为“数据库的分析和设计阶段”,后两个阶段称为“数据库的实现与运行阶段。” 时素平.基于组件式 GIS 的城市公众查询系统的设计与实现D.昆明理工大学(1)需求分析:在这一步需要做的主要工作是收集数据库所有的信息容和处理要求,并对其进行分析。 (2)概念结构设计:经过需求分析后,在这个阶段把用户的需求加以解释,并用概念模型(概念模型是现实世界到信息世界的抽象,具有独立于具体的数据库实现的优点,因此它是用户和数据库设计人员之间进行交流的语言。)表达出来。(3)逻辑结构

28、设计:这个阶段的主要任务是利用数据库管理系统所提供的工具将信息世界中的概念模型映射为计算机世界中为数据库管理系统所支持的数据模型,并且将其用数据描述语言表达出来。 (4)物理结构设计:数据库的物理设计是指对数据库存储结构和存储路径的设计,即将数据库的逻辑模型在实际的物理存储设备上加以实现,从而建立一个具有较好性能的数据库。 基于ArcSDE技术的空间数据库建设 周迪民、陈学工 湘潭师范学院学报:自然科学版- 2007(5)数据库实施:数据库实施和运行维护阶段的主要工作是:装入数据,投入使用,同时根据数据库运行中所产生的问题以与用户提出的需求不断完善和提高数据库的功能以与性能3.2.2 数据库设

29、计原则建库原则 在建立数据时应遵循以下几个原则:(1)组织有序、层次分明。公交信息查询系统对数据的存取访问需要数据库有序的组织在一起,方便查询使用(2)最小冗余度原则。数据库的设计要遵循最小冗余度原则数据应该尽可能的不重复达到减少数据存储的冗余量,最终节省数据的存储空间这时因为同一个系统如果包含有大量重复的数据,这不但会浪费大量的存储空间,还会存在潜在的不一致危险,即同一记录在不同文件中可能不一样(如,在一个文件中修改了某一个数据而没在另外的文件中没有修改相应的数据)。最小冗余度也是数据库的一大优势 (3)数据独立性原则。数据独立性原则指的是数据的存放应尽可能地与使用它的应用程序相独立。数据独

30、立性可以分为数据的物理独立与数据的逻辑独立两个方面。由于有了数据的独立性,数据库系统就可以使用户数据与物理数据完全分开,因此,可以使用户摆脱了繁琐的物理存储细节。由于用户程序不依赖于物理数据,从而降低用户程序的维护开销。 (4)标准化、规化原则。在建立数据库时应该合理规定数据库的名称(例如:公交站点可以命名为BusStation,公交线路可以命名为BusLine),保证系统数据能够满足应用要求。 (5)系统可靠性、安全、完整性原则。一个数据库系统的可靠性主要体现在其软硬件故障率小、运行可靠、出了故障时能迅速恢复到可用状态等几个方面。数据库的安全性是指系统对数据的保护能力,防止非法使用所造成的数

31、据泄密和破坏。即对系统数据进行控制,使用户可以按照系统规定的规则来访问数据,以防止数据有意或无意地泄露。数据库的完整性原则是指数据的正确性、有效性以与兼容性。完整性检查可以将数据控制在有效的围,或保证数据之间满足一定的关系。开发人员通常通过设置各种完整约束条件来解决这一问题。 基于 ArcGIS Engine 的城市公众信息查询系统研究 以西安市为例 董快鸽3.3 公交数据库详细设计公交数据库的设计主要包括了公交的站点数据库设计、公交线路的设计、城市的设计、和其他的一些设计,在统立好一个名为“公交数据库”的数据库后分别建立各个数据的分表分别对这些表进行设计3.3.1 公交站点的数据库设计公交数

32、据站点的设计如图表格 2 公交站点字段表所示:表格 2 公交站点字段表表名:BusStation(公交站点)字段名数据结构说明BusInfoIDNvarchar(255)数字 对应 busInfo表 IDStationNvarchar(255)车站点称,例如:贵大StationIndexFloat车站的序号(人为规定一个方向进行排序)其实体联系图(ER图)如图 34 实体-联系图所示:图 34 实体-联系图3.3.2 公交线路的数据库设计公交数据线路的设计如图表格 3 公交线路字段表所示:表格 3 公交线路字段表表名:BusLine(公交线路)段名数据结构说明IDFloat数字 (对应BusI

33、nfo表中BusLine ID)AreaIDFloatAreaID(对应Area表ID)LineCodeNvarchar(255)公交线路其实体联系图(ER图)如图 35 实体E-R图所示:图 35 实体E-R图3.3.3 公交线路信息数据库设计公交数据线路信息的设计如表格 4 公交线路信息字段表所示:表格 4 公交线路信息字段表表名:BusInfo字段名数据结构说明IDNvarchar(255)数字 对应BusStation表中的BusInfo idBusLineIDFloat对应BusLine表IDStartTimeFloat起点首班车时间EndTimeFloat起点末班车时间LastSt

34、artTimeFloat终点首班车时间 LastEndTimeFloat终点末班车时间TimeInfoNvarchar(255)首末车时间说明TicketSystemNvarchar(255票制CarfareNvarchar(255)全程票价元KMNvarchar(255)线路长度公里OtherInfoNvarchar(255)其他信息BusInfoIndexFloat排序其实体联系图(ER图)如图 36 实体E-R图所示(只包含部分属性):图 36 实体E-R图3.3.4 公交城市信息数据库设计公交城市数据库主要用于存放不同的城市信息,其公交城市信息数据库设计如表格 5 城市字段表所示:表格

35、 5 城市字段表表名:Area(城市)字段名数据结构说明IDFloat数字ProvinceNvarchar(255)省份CityNvarchar(255)城市例如:市City2Nvarchar(255)城市短名称例如:PinyinNvarchar(255)拼音其实体联系图(ER图)如图 37 实体E-R图所示:图 37 实体E-R图上面的四实体联系图通过合并就可以得到公交数据库的完整的实体联系图(如图 21 公交E-R图所示)通过上面的设计我们得到了四数据库表这四数据库表为Area.dbo、BusInfo.dbo、BusLine.dbo、BusStation.dbo,利用这四表可以实现公交数据

36、信息的查询,但是对于管理员来说,这四表只能够查询而不能够限制用户只进行数据的查询,而不进行数据的增、删、查、改等操作因此还需要建立一系统管理员验证表(qadmin表)3.3.5 公交管理员信息数据库设计公交管理员数据库的设计如表格 6 管理员字段表所示:表格 6 管理员字段表表名:qadmin字段名数据结构说明adusersnchar(50)存放系统管理员的用户名用于登陆验证adpwdnchar(50)存放系统管理员的登陆密码用于登陆验证其实体联系图(ER图)如图 38 实体E-R图所示:图 38 实体E-R图此时当系统管理员输入用户名和密码,通过查询与设计的表qadmin中的adusers和

37、adpwd作比较,如果一致则进入系统管理员的增、删、查、改等界面,如果不一致则无法进入到系统界面,从而能实现了管理员功能模块验证功能。3.4 数据库关系图通过上面的分析我们可以得出数据表Area.dbo、BusInfo.dbo、BusLine.dbo、BusStation.dbo之间存在疑点的关系,我们可将其关系画为如图 39 关系图所示,通过这图可以清晰的反应四数据表之间的对应关系。图 39 关系图第4章 实现4.1 系统界面设计与实现系统设计是新系统的物理设计阶段。根据系统分析阶段所确定的新系统的逻辑模型、功能要求,在用户提供的环境条件下,设计出一个能在计算机网络环境上实施的方案,即建立新

38、系统的物理模型。对于公交查询系统主要涉与两个方面:1、用户功能模块设计2、系统管理员模块设计,其设计界面如图 41 系统主界面所示:图 41 系统主界面其中当点击”用户查询模块”后进入用户操作主界面,同理当点击”系统管理员模块”后则进入到系统管理员登陆模块如图 42 用户查询主界面和图 49 管理员登录所示。考虑到有一些线路和站点是查询率较高的因此在主界面中设计了热门信息的查询按钮,以方便用户快速的查询到这些热门信息,线路实现的关键代码如下:Dictionary p = new Dictionary(); string a = button3.Text; p.Add(a, a); string

39、 sql = SELECT Area.City, BusLine.LineCode, BusStation.Station FROM (Area INNER JOIN BusLine ON Area.ID = BusLine.AreaID) INNER JOIN BusInfo ON BusLine.ID = BusInfo.BusLineID) INNER JOIN BusStation ON BusInfo.ID = BusStation.BusInfoID WHERE (Area.City=市) AND (BusLine.LineCode = a); DataTable dt = Sql

40、Helper.GetDataTable(sql, p); richTextBox1.Clear(); for (int i = 0; i dt.Rows.Count; i+) string str = string.Concat(dt.RowsiCity.ToString(), , dt.RowsiLineCode.ToString(), , dt.RowsiStation.ToString(); richTextBox1.AppendText(str + n); 同理可得到主界面中公交站点查询的代码,而在公交站点和线路查询模块中的代码也和它类似。4.2 用户功能模块总体设计用户的功能模块主要

41、用于完成信息的查询与反馈操作是系统设计核心之一。其模块可以细分为以下几个小模块:1、线路查询模块2、站点查询3、公交换乘查询这些模块又是在一个用户主界面功能模块中来具体实现的。4.2.1 用户主界面功能模块设计与实现用户主界面是供用户进行数据的一系列操作所使用的,其界面至少包含站点、线路、换乘查询等部分。最终设计的界面如图 42 用户查询主界面所示:图 42 用户查询主界面对于用户主界面来说不存在代码部分的设计,界面中的容全为vs2010中的组件,其中1标注部分为textBox组件其主要作用是让用户输入插叙的条件,2标注部分为listBox,其主要作用是将满足带有文本框中容的所有数据都显示出来

42、以供用户选择,3标注部分为label(标签)组件,其主要作用是用于标注后面组件的意义或者是用途,4标注部分为button(按钮)组件,其主要作用是当单击该按钮时显示出相应的信息来,在最下方的组件为richTextBox,其主要作用是将信息的结果显示出来,以便人们查看。4.2.2 线路查询模块对于一个公交查询系统,在公交线路的查询常会知道某条线路或者是某条线路的部分名称(例如模糊的知道线路名称中有20这两个数字可能是线路203、201等)来查询这条线路所经过的站点名称,这时线路查询模块则会根据模糊查询功能将所有的带有20的公交线路列举出来供用户选择(如图 43 模糊线路显示),在单击查询后将结果

43、列举出来(如图 44 公交线路查询结果)。图 43 模糊线路显示图 44 公交线路查询结果其编码思路是通过模糊查询将查询结果通过一个数组在循环添加到listBox列表中,通过获取选定的listBox中的数据传到textBox中在进行查询。其关键代码为:string sql = SELECT Area.City, BusLine.LineCode, BusStation.Station FROM (Area INNER JOIN BusLine ON Area.ID = BusLine.AreaID) INNER JOIN BusInfo ON BusLine.ID = BusInfo.BusL

44、ineID) INNER JOIN BusStation ON BusInfo.ID = BusStation.BusInfoID WHERE (Area.City=市) AND (BusLine.LineCode Like a); DataTable dt = SqlHelper.GetDataTable(sql, p); richTextBox1.Clear(); for (int i = 0; i dt.Rows.Count; i+) string str = string.Concat(dt.RowsiCity.ToString(), , dt.RowsiLineCode.ToStri

45、ng(), , dt.RowsiStation.ToString();4.2.3 站点查询在公交站点的查询常会知道某个站点的全部或者是某歌站点的部分名称(例如模糊的知道站点名称中有贵大这两个数字可能是贵大花溪区、贵大科技学院等)来查询经过这个站点的所有的线路,这时站点查询模块则会根据模糊查询功能将所有的带有“贵大”的公交站点数据列举出来供用户选择(如图 45 模糊站点显示),在单击查询后将结果列举出来(如图 46 公交站点查询结果)。图 45 模糊站点显示图 46 公交站点查询结果公交站点查询编码的思路、代码和线路查询的思路、代码基本一致。4.2.4 公交换乘查询在公交查询系统中经常会用到换乘

46、查询,其作用是查询经过两个站点的公交线路,比如知道起点站的名字或是模糊名字(例如:贵大或贵)和终点站的名字或模糊名字(例如:六广门或六)通过这两个站点选取listBox中出现的站点名或是直接用这两个站点名(这两个站点名正确才可以直接使用)来查询所有经过这两个站点的公交线路信息,如图 47 模糊显示和图 48 站点到站点的查询结果所示。图 47 模糊显示图 48 站点到站点的查询结果4.3 管理员功能模块对于公交查询系统来说,公交线路、站点等信息不是一成不变的,对于用户来说过时的公交线路、站点信息没有多大的用处。因此需要进行数据的实时更新,即对数据的操作实现增删查改功能,使得软件的查询具有实际的

47、意义方便人们的出行。当然对于数据的更新并不是所有的人群都可以而是一些固定的人群即在公交查询数据库中的表“admin”中存在的人才可以进行更改,以防止数据被乱改等现象,这时就需要设计管理员模块。其模块可以细分为以下几个小模块:1、管理员登录模块2、信息修改模块3、信息增加模块4、信息删除模块当然系统管理员还可以查询数据,其查询模块和用户的查询模块处于同一位置,即管理员的查询模块即为用户的查询模块。4.3.1 系统管理员登陆界面设计登陆界面设计的意义在于防止外来人员进入到修改界面中修改数据造成数据的破坏,首先在公交系统设计的主页面中添加一个新的窗体既为管理员的登陆窗体,在登陆窗体中分别添加按钮(确

48、定按钮、清空按钮如果填写错误则可以清空输入的容、取消按钮)、标签(用于标注用户名和密码)、文本(输入数据使用)如图 49 管理员登录所示:图 49 管理员登录在属性窗口中设置第二个文本框的PasswordChar属性为字符“*”,在设置窗体的CanceButton属性为button3,这样当用户单击“取消”按钮后,DialogResult属性值就是Cancel。 C#语言程序设计基础(第二版) 郑宇军 编著 清华大学当用户输出密码和用户名之后单击确定就会与数据库进行查询比对如果正确则会跳转到下一个窗体,如果不正确则弹出“错误”窗口(如图 410 登录错误界面提示所示),清空按钮则可以清空输入的

49、用户名和密码的容。图 410 登录错误界面提示4.3.2 添加路线和站点信息在上一步中当我们输入正确的用户名和密码之后就可以进入到系统管理员的操作界面,对于“添加路线和站点”界面设计如图 411 信息增加界面:图 411 信息增加界面此时就可以添加线路信息和站点信息,但是要注意到各个字段之间的对应关系,在添加数据的时候应对照下方的文字部分。其关键代码如下:string sql = insert into BusLine (ID,AreaID,LineCode) VALUES (id,arearid,linecodeid);/数据库插入语句Dictionary p = newDictionary

50、();/字典变量,使其对应传值 p.Add(id, id); p.Add(arearid, arearid); p.Add(linecodeid, linecodeid);SqlHelper.ExecuteNonQuery(sql ,p );MessageBox.Show(增加信息成功|);4.3.3 删除线路和站点同理对于系统的删除界面进行如图 412 删除界面的界面设置:图 412 删除界面此时当点击对应的按钮时,对于线路则会删除整条的数据信息(ID、AreaID、LineCode)以与表BusInfo中所对应的信息记录,对于站点则会将这条站点的信息删除但是当删除这个站点时应查看是否有别的

51、线路进过如果有则不该删除,以免影响其他的线路信息,因此需要设计一个MessageBox消息框,在消息框代码中添加MessageBox.Show(是否删除, 警告?, MessageBoxButtons.YesNoCancel)7则可以实现重要数据提示功能,以免误删。关键代码:MessageBox.Show(是否删除, 警告?, MessageBoxButtons.YesNoCancel);string Station = textBox2.Text;string sql = delete from BusStation where Station=LineCode;Dictionary p =

52、 newDictionary(); p.Add(Station, Station);SqlHelper.ExecuteNonQuery(sql, p);MessageBox.Show(删除信息成功!);4.3.4 修改路线站点信息对于一个完整的管理员模块还需要具备修改数据信息的功能,“修改路线站点信息”界面和增加界面大体一致如图 413 修改界面所示:图 413 修改界面此时只需按照说明填写即可。其关键代码如下:string selectsql = select ID,AreaID,LineCode from BusLine where LineCode=LineCode;/必填容用于查询信息

53、Dictionary p = newDictionary(); p.Add(id, id); p.Add(ArearID, ArearID); p.Add(LineCode, LineCode);DataTable dt = SqlHelper.GetDataTable(selectsql, p);if (dt.Rows .Count 0 )/判断要修改的线路存不存在 string sql = UPDATE BusLine SET id=id,AreaID=ArearID,LineCode=LineCode where LineCode=LineCode;Dictionary p1 = newDictio

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论