现在的位置: 首页 > 综合 > 正文

公交车路线查询系统后台数据库设计——关联地名和站点

2013年09月21日 ⁄ 综合 ⁄ 共 6623字 ⁄ 字号 评论关闭

数据库下载(该数据库已经输入了广州市350条公交车路线作为测试数据) 

 

在《公交车路线查询系统后台数据库设计——查询算法》一文中,已经实现了查询站点到站点的路线查询算法,但是,现实中用户不一定使用站点进行查询,而是使用地名。因此,公交车查询系统数据库必需记录地名与站点的对应关系,在查询时将地名映射为站点。根据实际情况,某一地点附近通常有几个站点,因此,地名与站点之间是多对多的关系。显然,只需创建一个地名站点关系表stop_spot(Stop,Spot)用于储存这个关系即可。数据库关系图如下:

 

注:

Route:路线表
Stop
:站点表
Spot
:地名表
stop_route
路线-站点关系表
stop_spot
:地名-站点关系表

1.路线和地名信息维护:

以下函数用于维护公交车路线和地名的相关信息

字符串分割函数(信息处理的及路线查询的存储过程都需要使用到该函数) : 

SplitString

 

插入新的公车路线: 

InsertRoute

 

插入新地名函数: 

InsertSpot

 

2.路线查询

在《公交车路线查询系统后台数据库设计——查询算法》一文中,使用储存过程InquiryT0InquiryT1InquiryT2实现了站点到站点的查询,但是地名可能对应多个站点,因此,当进行地点到地点的查询相当于站点集到站点集的查询。因此,为了支持使用地名进行查询,将InquiryT0InquiryT1InquiryT2修改为站点集到站点集的查询:

直达路线查询: 

InquiryT0

 

一次换乘查询: 

InquiryT1

 

二次换乘查询:

InquiryT2

 

综合查询: 

Inquiry

抱歉!评论已关闭.