北京公交查询系统论文.docx

上传人:b****6 文档编号:4647219 上传时间:2022-12-07 格式:DOCX 页数:32 大小:529.32KB
下载 相关 举报
北京公交查询系统论文.docx_第1页
第1页 / 共32页
北京公交查询系统论文.docx_第2页
第2页 / 共32页
北京公交查询系统论文.docx_第3页
第3页 / 共32页
北京公交查询系统论文.docx_第4页
第4页 / 共32页
北京公交查询系统论文.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

北京公交查询系统论文.docx

《北京公交查询系统论文.docx》由会员分享,可在线阅读,更多相关《北京公交查询系统论文.docx(32页珍藏版)》请在冰豆网上搜索。

北京公交查询系统论文.docx

北京公交查询系统论文

2012届毕业设计

 

课题北京公交查询系统的设计与实现

学生姓名

系别数学与计算机科学系

专业班级2008级信息管理与信息系统

指导教师

二○一二年六月

北京公交查询系统的设计与实现

摘要

如今计算机网络发展非常迅速,时间的重要性对于人们来说不言而喻,人们出行越来越注重时间的节约,城市公交已经成为出行的一种主要的方式,我国城市公交乘客信息系统的发展处于一个较落后的水平,广大乘客可以获得信息的方式很少,为了解决这种问题,需要大力发展我国的城市公交乘客信息系统。

出于这个目的,在老师的指导下,我设计了这个城市公交出行线路查询系统这个应用程序。

在设计过程中,首先分析了我国城市公交乘客信息系统的发展现状,找出问题与不足。

其次,在对公交乘客出行心理特征进行分析的基础上,考虑了乘客选择公交线路决策的因素,建立了基于时间价值与费用价值的公交线路选择合理的模型。

在此基础上,进行程序关键部分的框架设计,理清程序设计思路。

之后是程序关键部分的具体实现,包括关键程序原代码。

最后完成功能介绍与使用说明。

运用VB语言或方法,对线路查询系统进行了程序设计,并进行了模拟实验。

本次设计的软件较为符合公交运营的实际情况,充分考虑了不同公交乘客的实际要求,运算速度较快,有较强的实际应用价值。

关键字:

公交查询;VB;数据库

 

DesignandImplementationofBeijingBusInquiresSystem

Abstract

Nowcomputernetworkdevelopmentveryquickly,theimportanceoftimeforpeopletoself-evident,peoplepaymoreandmoreattentiontothetraveltimesaving,citybustravelhasbecomeoneofthemainway,intransitpassengerinformationsystemdevelopmentisinarelativelybackwardlevel,thepassengerscangetinformationrarelyway,inordertosolvethisproblem,needtoboostthedevelopmentofChina'surbanbuspassengerinformationsystem.Forthispurpose,undertheguidanceoftheteacher,Idesignedthecitybustravellineinquirestheapplicationsystem.

Inthedesignprocess,thefirstanalysisoftheurbanbuspassengerinformationsystemdevelopmentpresentsituation,andfindouttheproblemsanddeficiencies.Secondly,inthebuspassengerstothepsychologicalcharacteristicsonthebasisoftheanalysisof,considerthepassengerschoosebuslinesdecisionfactors,basedonthetimevalueandthevalueofcostbuslinestherationalchoicemodel.Onthisbasis,theproceduresofkeypartoftheframeworkdesign,toclearuptheprogramdesignideas.Aftertheprocedureofkeypartoftheconcreteimplementation,includingkeyprogramtheoriginalcode.Finallycompletefunctionisintroducedandinstructions.UsingVBlanguageormethod,thelineinquirestheprogramdesignsystem,andsimulationexperiment.Thedesignofthesoftwareconformtotheactualsituationofthebusoperation,fullyconsidereddifferentbuspassengersactualrequirements,speedfaster,astrongpracticalapplicationvalue.

Keywords:

PublicTransportationQuery;VB;Database

 

目录

第一章绪论1

1.1我国城市公交乘客信息系统的现状1

1.1.1乘客可以获得的公交信息很少1

1.1.2乘客出行中获得信息困难1

1.1.3乘客获得的信息准确性得不到保证1

1.2开发的意义1

1.3相关技术的基本理论2

1.3.1关于VB2

1.3.2使用SubMain启动系统2

1.3.3使用ADO对象模型2

1.3.4使用GetRows方法获取数据3

第二章系统分析4

2.1可行性分析4

2.1.1可行性分析的前提4

2.1.2对支出与收益的分析4

2.1.3计算机技术分析4

2.2需求分析4

2.2.1后台管理4

2.2.2前台查询5

第三章系统设计6

3.1系统目标6

3.2系统功能结构6

3.3系统开发环境6

3.4系统特色介绍6

3.5数据库设计7

3.5.1数据库分析7

3.5.2系统E-R图7

3.5.3数据库结构设计8

3.5.4创建数据库9

3.5.5数据库表9

第四章各模块的实现11

4.1设计启动模式代码11

4.2引用ADO部件12

4.3主窗体界面12

4.4后台管理模块设计13

4.5前台查询模块17

总结26

参考文献27

致谢28

 

插图清单

图3-1系统结构图6

图3-2公交线路的E-R图7

图3-3公交线路的E-R图8

图3-4bus表9

图3-5station表10

图4-1工程属性11

图4-2引用ADO12

图4-3主窗体12

图4-4增加路线14

图4-5保存增加路线14

图4-6修改路线15

图4-7保存修改路线16

图4-8管理站点17

图4-9修改站名17

图4-10乘车查询18

图4-11公交查询18

图4-12两站查询19

 

表格清单

表3-1bus表8

表3-2station表8

第一章绪论

1.1我国城市公交乘客信息系统的现状

我国城市公交乘客信息系统的发展处于一个落后的水平,广大乘客可以获得信息的方式很少,公交信息的完整性与准确性得不到保证,而且还没有专门的机构负责信息的发布与管理。

1.1.1乘客可以获得的公交信息很少

乘客可以获得的公交信息很少,而且方式主要是常规手段。

我国乘客一般获得公交信息的方式局限于电话,交通图,向熟人问讯等常规方式。

乘客可以获得的公交信息很少,除去线路,站点等基本信息以外,有关班次,车辆到离站时间的信息基本上没有。

1.1.2乘客出行中获得信息困难

乘客出行中获得信息困难,基本上没有实时信息。

除去在杭州,上海等少数几个城市,乘客可以通过分布于城市中的若干电子站牌获得一些公交车辆的运营信息以外,在其它城市“出行中”的乘客无法获得任何实时信息。

在我国一些城市中,有不少装饰华美的公交站台,但在这些站台上却找不到实用的城市交通图。

总而言之,我国乘客在出行中无论是“静态线路信息”还是“动态实时信息”都很难获得。

1.1.3乘客获得的信息准确性得不到保证

缺乏专门的交通信息发布管理机构,乘客获得的信息准确性得不到保证。

目前,我国大多数城市对于交通信息的发布没有专门的管理机构与规章制度。

在城市交通信息服务需求小的情况下尚可应付。

但随着城市交通信息服务需求的增长,从事交通信息服务的人员与企业数量的增加,需要有专门的管理机构与制度。

当前的城市交通信息服务存在着混乱与低效的问题,有些甚至是对乘客的误导。

1.2开发的意义

随着社会的发展,人们不再局限于生活在某一个城市。

当到了一个不熟悉的城市时,出门乘车时路线的选择就显得相当重要了,有了正确的出行路线,可为用户节约大量的时间,提高办事效率。

另外,一些特大城市的公交系统非常庞大,市民在自己生活的城市中出行,有时也需要通过咨询才能了解出门路线的选择。

因此,开发一个城市的公交查询系统就显得十分必要了。

本系统采用VisualBasic中文版和Acess2003数据库系统进行开发。

如本系统可以方便添加公交路线、添加公交站点信息,也可方便地修改公交路线和站点信息。

能让用户方便地查询两点之间的路线选择方案。

使用本系统可提高公交公司对公交路线、站点的管理,可以方便乘客查找最快捷的路线,方便出行。

1.3相关技术的基本理论

1.3.1关于VB

VisualBasic是Microsoft公司推出的一种Windows应用程序的开发工具。

由于它具有使用方便,简单易学、功能丰富等特点,迅速成为最流行的Windows应用程序的开发工具之一。

何谓VisualBasic?

“Visual”指的是开发图形用户界面(GUI)的方法,不需编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象加到屏幕上即可。

如果已使用过诸如Paint之类的绘图程序,实际上就已经掌握了创建用户界面的必要技巧。

“Basic”指的是BASIC(BeginnersAll-PurposeSymbolitInstructionCode)语言,这是一种在计算技术发展史上应用得最为广泛的语言。

VisualBasic在原有BASIC语言的基础上进一步发展,目前包含了数百条语句、函数及关键词。

其中,很多和WindowsGUI有直接关系。

1.3.2使用SubMain启动系统

如果一个应用程序只包含1个窗体,则程序从执行窗体的Form的Load过程开始。

如果有多个窗体,则从设计阶段建立的第1个窗体开始执行。

有时,希望在运行程序之前先执行一些操作,此时可以将这些操作写在SubMain过程中。

SubMain是在模块中定义的,如果1个程序中包含多个模块,只能允许有1个SubMain过程。

SubMain过程中可以包含若干语句。

但它与其他语言中的主程序不同,程序启动时不会自动执行。

程序员可以指定程序从某一窗体或是SubMain开始执行。

设置方法如下:

1、在VisualBasic开发环境中选择菜单“工程/属性”命令,打开“工程属性”对话框,单击“通用”选项。

2、单击对话框中的“启动对象”下拉列表框右侧的箭头,显示出当前工程中各窗体的名字和SubMain,可以定义启动工程时先启动的窗体时或是SubMain。

如果选择了SubMain,则程序运行时从模块的SubMain过程开始。

1.3.3使用ADO对象模型

通过ADO对象模型访问数据库,可编写相应的程序代码访问数据库。

ADO对象模型定义了一个可编程的分层对象集合,主要由三个对象成员(Connection、Command和Recordset),以及几个集合对象Errors、Parameters和Field等所组成。

1、Connection对象,该对象表示数据源的连接,通过该对象可生成ADO层次中的其他对象,其返回值是一个Recordest对象。

2、Command对象,该对象定义了将对数据源执行的指定命令。

使用Command对象查询数据库并返回Recordset对象中的记录,以便执行大量操作或处理数据库结构。

3、Recordset对象,该对象表示的是来自本表或命令执行结果的记录全集。

Recordset对象所指的当前记录均为集合内的单个记录。

可使用Recordset对象操作来自提供者的数据。

使用ADO时,通过Recordest对象几乎可对所有的数据进行操作。

所有Recordset对象均使用记录(行)和字段(列)进行构造。

1.3.4使用GetRows方法获取数据

Recordset对象的GetRows方法可将记录集中的数据作为一个二维数组返回,数组的每一行对应Recordset中的一笔记录,且每一列对应到记录中的栏位。

GetRows方法的语法如下:

varArray=rs.GetRows([Rows],[Start],[Field])

Rows是要读取记录的数量;如果想要取得Recordset所有记录,可用-1或省略此参数。

Start是指出第一个被读取记录的书签;也可以是下列列举常数中的一个:

●0-adBookmarkCurrent(目前记录)

●1-adBookmarkFirst(第一笔记录)

●2-adBookmarkLast(最后记录)

Field是可选择的栏位名称阵列,其用来限制要读取的资料量。

(也可指定单一栏位名称、单一栏位索引、或者一个栏位索引阵列)。

当设定Rows为少于Recordset记录笔数时,第一笔未读取的记录变成现行记录。

若省略Rows参数或设定为-1-adGetRowsRest或大于未读取的笔数时,GetRowa方法会读取所有记录并让Recordset在EOF状态,而不会产生任何错误。

当处理得到的二维数组时,应该记得保存的方式是有点相反的感觉:

数组中的第一维定义Recordset的行(资料行),第二维定义Recordset的列。

GetRows方法通常比循环逐次读记录集中的多条记录要块,但使用这方法时,必须确定Recordset未包含太多记录;否则,会很容易以一个非常大的二维数占用大量的内存空间。

 

第二章系统分析

2.1可行性分析

2.1.1可行性分析的前提

1、系统要求

北京公交查询系统需要包括公交路线信息管理、公交站点信息管理、公交查询等功能。

在公交路线信息管理和公交站点信息管理功能中,都应提供对数据的编辑修改功能。

2、系统目标

北京公交系统的系统目标是:

实现公交公交企业的信息管理,提高公交站点数据的维护性能,提高出行管理效率,是出行工作从盲目向预知的转变,减少人力物力资源。

2.1.2对支出与收益的分析

开发此系统后,公交线路管理中的大部分工作都实现了自动化,调度部门的工作人员只需一次录入各路线、站点的信息,就可以方便以后的查询、修改。

这样公交公司只需花费少量的人力物力,可节省企业管理成本,提高工作效率。

本系统方便了乘客选择最合适的出行路线,可减少外来乘客因走错路线而重复乘车的状况,在一定程度上可缓解公交车的拥挤,使公共资源得到最有利用。

2.1.3计算机技术分析

本系统使用VisualBasic和Acess作为开发环境,这是非常成熟的开发平台本系统利用VisualBasic语言和Access2003数据库进行开发,程序结构紧凑、进行速度快、操作简单、功能齐全,控件的使用都较容易,简单的平台可实现复杂的系统功能,可方便地位用户选择出行路线。

2.2需求分析

通过与北京公交集团调度人员、部分乘客进行沟通,详细了解本系统的需求,得到该系统需要具备的功能,具体如下。

2.2.1后台管理

1、可以增加、修改路线资料;

2、可以增加、修改站点信息;

3、可以调整站点在路线中的路线的位置、删除线路中的站点。

2.2.2前台查询

1、可以查询指定路线经过的所有站点;

2、可以查询出发站点到目的站点之间的出行方案(当有多种方案时,全部显示出来,供用户选择)。

 

第三章系统设计

3.1系统目标

根据需求分析的研究,我们确定系统要实现的目标如下。

1.界面简单,框架清晰,美观大方;

2.灵活、快捷地输入公交线路信息、站点信息;

3.对用户输入的数据,系统进行严格的数据检验,尽可能排除人为输入错误,如线路重复、站点重复等;

4.能根据线路查询该线路经过的所有站点;

5.能根据乘客的要求,查询从出发站点到目的站点之间各种出行方案,有直达车的,只能显示直达车的路线,无直达车的,显示通过一次换乘到达目的站之间的各种路线。

3.2系统功能结构

图3-1系统结构图

3.3系统开发环境

本项目的开发环境如下:

1、MicrosoftVisualBasic6.0中文版。

2、Access2003数据库。

Access运行在Windows系列平台之上的具备了多媒体与开放性的数据库系统。

它的直观性、易用性、开放性及功能强大的特点,使其成为目前最受欢迎的PC数据库软件。

3.4系统特色介绍

本系统的特色有:

1、操作简单,符合Windows风格的操作界面,使用户可快速上手。

2、减少数据的重复录入,公交线路、站点等数据只需录入一次,即可在其他模块中使用。

3、使用的查询功能。

根据乘客的需要,可查询指定线路的所有站点,也可查询出发站点和目的站点之间的所有路线。

4、灵活快捷的输入方式,乘客在查询时,对于众多的公交站点,既可以从下拉表框中选择,也可直接输入。

3.5数据库设计

3.5.1数据库分析

本系统中需要保存大量的数据(包括公交线路和公交站点),通过使用数据库技术,将这些数据保存到数据库中,本系统使用VB6.0+Acess数据库构成,是一个桌面版的应用程序。

1、本项目处理的数据量不是很大(一般一条公交路线为20个左右的站点,对于特大型城市的公交路线为几百或上千个,站点数据量为几千或几万个),使用Access完全可以对这些数据进行保存和查询。

2、Access数据库为一个独立的文件,可方便用户对其进行单独的备份和恢复。

3、Access数据库可方便地升级到MicrosoftSQLServer数据库。

3.5.2系统E-R图

本系统包括的实体有两个:

公交线路、公交站点,下面将分别介绍这两个实体的E-R图,通过E-R图了解各实体的属性。

1.公交路线的E-R图,如图3-2所示。

2.公交站点的E-R图,如图3-3所示。

图3-2公交线路的E-R图

图3-3公交线路的E-R图

3.5.3数据库结构设计

本系统共建了两张表:

bus(保存公交线路)、station(保存公交站点)。

下面分别列出各表的字段说明。

1、bus表:

用于保存公交线路的基本信息。

该表包括9个字段,分别用来保存某一公交线路的相关信息,各字段的参数如表3-1所示。

表3-1bus表

字段名称

数据类型

字段大小

是否主键

说明

ID

自动编号

线路序号

BUS

文本

20

线路名

BEGINEND

文本

50

起止站名

TICKTYPE

文本

20

售票类型

PRICE

文本

20

票价类型

IC

是或否

支持IC卡

RUNTIME

文本

20

运行时间

COMPANY

文本

50

公交公司

MEMO

备注

备注

Access中的“自动编号”类型可为记录自动递增产生一个序列号,该字段可用来作为表的主键。

一般情况下,公交线路名称是唯一的,可以使用公交线路名字字段BUS作为关键字。

但有时公交线路名称可能会更改,因此本系统中仍然使用一个自动编号字段ID作为关键。

2、station表:

用于保存各线路所经过的站点名称。

该表包括4个字段,分别用来保存线路编号、站点名称、站点在线路中的序号等信息,各字段的参数如表3-2所示。

表3-2station表

字段名称

数据类型

字段大小

是否主键

说明

ID

自动编号

序号

BUSID

数字

线路序号

STATION

文本

50

站点名

ORDER

数字

站点序号

其中,字段BUSID与BUS表中的字段ID对应,保存公交线路对应的编号。

这里保存编号的好处是,当只是修改了公交线路的名称时,station表中的内容可以不修改,通过BUSID号仍然可连接到对应的公交线路中。

3.5.4创建数据库

通过MicrosoftOffice2003中文版的组件Access可方便地创建数据库具体步骤如下:

1、启动MicrosoftAccess软件。

2、选择菜单“文件/新建”命令,单击右侧“任务窗格”中的“空数据库”。

3、选择保存数据库的位置,并输入数据的名称“bus”,单击“创建命令”,系统将创建一个空数据库。

4、双击“使用设计器创建表”项,将打开创建表的对话框,在对话框中输入个字段的名称,并设置各字段的类型、长度相关属性。

5、单击菜单“文件/保存”命令,在弹出的对话框中输入表的名称“bus”,单击“确定”按钮即可将新建的表结构存盘。

到此,新建表创建完成。

该表的名称将显示在数据库对话框中

3.5.5数据库表

1、bus表

公交线路信息保存bus数据库中,如图3-4所示。

图3-4bus表

2、station表

各站点名称信息保存在station数据库中,如图3-5所示。

图3-5station表

 

第四章各模块的实现

4.1设计启动模式代码

在VB6中执行菜单“工程属性”命令,打开如图4-1所示的“工程属性对话框”在该对话框“通用”选项卡的“启动对象”下拉列表中可看到工程的启动对象是一个过程“SubMain”。

图4-1工程属性

工程启动过程“SubMain”定义在一个模块中,在“工程资源管理器”中展开“模块”组,打开“bus.bas”文件。

在主模块中编写代码启动本系统,同时在主模块的SubMain过程中设置全局变量的值,以连接到对应数据库。

具体代码如下:

PublicConnAsString

DimstrDBAsString

SubMain()

strDB="\bus.mdb"'数据库位置

Conn="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&_

App.Path+strDB+";PersistSecurityInfo=False"'数据库连接字符串

frmMain.Show'显示主窗体

EndSub

4.2引用ADO部件

在本系统中,将使用ADO对象模型访问数据库中的数据,因此需要将ADO对象模型的引用添加到当前工程中,具体步骤如下:

1、在VisualBasic中,单击菜单“工程/引用”命令,打开如图4-2所示对话框。

2、在“引用”对话框的“可用的引用”列表

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教学研究 > 教学反思汇报

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1