




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、旅游资源及线路管理系统 第 页1 1选题背景 计算机软件开发在当代已成为一个主要的 行业,发展前景越来越好,软件开发需求人员也 越来越大,特别是数据库和信息管理方面的 开发,更是供不应求.在毕业之即,作为计算机专业 的 学生,为了 适应社会的 需要,加强自己的 编程能力.在毕业设计选题时,我坚定不移地选 择了 数据库应用系统开发方面的 课题.下面将具体分析: 1.1 旅游资源前景 旅游业是当今国际国内发展最快的 产业之一,也是世界各国相互了 解、交流、,从而促 进经济全球化的 重要手段,所以各国政府都非常重视旅游业的 发展.我国现代旅游业只有短 短 20 年历史,但已经取得了 举世瞩目的 成绩
2、:1992 年国内旅游人次为 3.3 亿人次,收入 250 亿元;1999 年达到 7.19 亿人次,收入 2831 亿元;2001 年再创新高,达到 7.44 亿人次,收入 3522.26 亿元.1999 年,我国国内国际旅游总收入超过了 4000 亿元人民币,创汇 140 亿美元, 比 1978 年增长 48 倍.2000 年,我国旅游人数和收入已经从 1978 年的 世界第 41 位跃至前 10 名之列.在制定“十五”(2001 至 2005 年)计划和 2015 年跨世纪发展规划中,中国有二十四个 省把旅游作为在经济结构调整中优先发展的 支柱产业、重点产业.按照规划,预计到 2020
3、年, 中国旅游业总收入将超过 3.3 万亿元人民币,相当于国内生产总值的 百分之八,真正成为国民 经济的 支柱产业.加入 WTO 以后旅游业成为了 更加活跃、竞争更加激烈、发展更加迅速的 第三产业的 支柱之一. 现在,我国旅行社信息化建设落后,旅行社电脑的 用途多数是打打字.线路销售手工操作, 效率低下容易出错,客户资料不易整理,大量丢失,这些都是限制我们旅游发展的 瓶颈了 .而 目前市场的 旅游管理软件,动辄几万元,远非我们所愿意承受的 .旅游业普遍存在着企业规模 较小 ,管理不规范等弱点.因为旅游涉及吃、住、行、游、购、娱等诸多要素,而且这些要素 又分散在不同的 地域中,一个人不可能全面掌
4、握所有的 信息.一旦掌握某方面的 信息的 人 离开企业,就会对企业的 经营造成负面影响. 旅游资源及线路管理系统可以把各种旅游资源分类存储管理,通过网络实现资源共享,不 仅方便快捷,而且不会因为人员流动影响企业的 经营,是旅游社在激烈的 市场竞争中的 坚强 旅游资源及线路管理系统 第 页2 后盾. 1.2 数据库和信息管理系统前景 社会的 进步,科学的 发达,经济的 高速发展,使管理工作越来越离不开信息,信息处理已成 为当今世间上一项主要的 社会活动.随着微型计算机日益增多,它在各行各业中得到迅速推广 和应用,已经深入到社会的 各个领域,计算机已经成为现代信息处理的 重要工具.随之而来的 就是
5、各行各业对计算机应用软件的 大量需求. 1.2.1 管理信息系统概念 管理信息系统(米 IS,米 anage 米 ent Infor 米 ation Syste 米),是一个由人、计算机等组成的 能进行信息的 收集、传送、储存、维护和使用的 系统,能够实测企业的 各种运行情况,并利 用过去的 历史数据预测未来,从企业全局的 角度出发辅助企业进行决策,利用信息控制企业的 行为,帮助企业实现其规划目标.这里给出的 定义强调了 管理信息系统的 功能和性质,也强调 了 管理信息系统中的 计算机对企业管理而言只是一种工具.管理信息系统是信息系统的 重要 分支之一,经过 30 多年的 发展,已经成为一个具
6、有自身概念、理论、结构、体系和开发方法的 覆盖多学科的 新学科. 信息管理者 信息源信息处理信息用户 图 4.2.1 管理信息总体结构图 而数据和信息的 结合在现代社会生活中表现出了 越来越强大的 功能和作用,数据已经 渗透到了 社会中的 每一个角落和行业,与我们的 生活息息相关.随着计算机的 日益普及和 网络的 发展,数据库的 应用范围越来越广,数据库应用的 功能也越来越强. 旅游资源及线路管理系统 第 页3 1.2.2 数据库的 基本概念 (1) 数据库 数据库(database,简称 DB),即数据的 仓库,是存储在计算机内、有组织的 、可共享的 相关数据的 集合.数据库中的 数据按一定
7、的 数据模型组织、描述和存储,具有较小 的 冗余 度、较高的 数据独立性和扩展性,并可为各种用户共享. 数据库中的 数据是高度结构化的 ,可以存储大量的 数据,并且能够方便地进行数据的 查询,另外数据库还具有较好的 保护安全和维护数据一致性的 措施,能够方便数据的 共享. (2) 数据库管理系统 数据库管理系统(database 米 anage 米 ent syste 米,简称 DB 米 S)是在操作系统支持下, 为数据库的 建立、使用和维护而配置的 软件系统,数据库管理系统是位于用户与操作系统之 间的 一层数据管理软件,它在操作系统的 基础上.对数据库进行管理和控制,利用数据库管理 系统提供
8、的 一系列命令,用户能够方便地建立数据库和操作数据,比如建表、向表中添加、删 除记录等.用户使用的 各种数据库命令以及数据库应用程序的 运行,都要通过数据库管理系 统来实现.另外,数据库管理系统还要保证数据的 安全性、完整性、多用户对数据库的 并发 使用及发生故障后的 系统恢复等任务. (3) 数据库应用程序 数据库应用程序是指用 Visual Basic 或 Delphi 等开发工具开发的 程序,用来实现某种 具体的 功能,例如旅游资源及线路管理系统,各种信息管理系统等.数据库应用程序 是在操作 系统和数据库管理系统的 支持下开发和运行的 ,它利用数据库管理系统提供的 各种手段访 问一个或多
9、个数据库及数据. 由于旅游业的 兴起和快速发展,需要一种高效、快速及方便地系统来管理整个旅游过程 中的 基本信息和资源,以减少人力、物力、时间等多方面资源的 浪费,给企业或公司带来更 多的 利润,这就使得信息管理和数据库管理系统得到了 充分的 利用. 本旅游资源及线路管理系统就是计算机信息管理和数据库应用程序开发相结合的 产物. 旅游资源及线路管理系统 第 页4 2需求分析 2.1 软件的 需求分析 软件需求分析是指用户对目标系统在功能、性能、行为、设计约束等方面的 期望. 需求分析的 任务是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清 晰、具体的 要求.需求分析的 结果是系统
10、开发的 基础,关系到工程的 成败和软件产品的 质 量. 2.2 需求分析阶段对系统的 综合要求有四个方面: (1) 系统功能要求 应该划分出系统必须完成的 所以功能. (2) 系统性能要求 系统需要的 存储容量以及后援存储,重新启动和安全性等方面的 考虑都属于性能要求. (3) 运行要求 这类要求集中表现为对运行时所处环境的 要求. (4) 将来可能提出的 要求 应该明确地列出那些虽然不属于当前系统开发范畴,但是据分析将来很可能会提出来的 要求.这样做的 目的 是在设计过程中对系统将来可能的 扩充和修改预做,以便一旦需要时能 比较容易地进行这种扩充和修改. 通过这些需求分析来确定整个系统的 功
11、能模块设计和界面的 设置和安排.需求分析在整 个软件开发设计中起着十分重要的 作用.因此,在实际的 工程中,应该接触产品的 最终用户 或者最终用户代表.缺乏这样的 接触,对于许多需求问题,就无法得到可靠的 回答.如果缺乏 可靠的 需求信息,就无法生产出高质量的 产品.实际上,使用不可靠的 需求信息,产品无疑是 不能使用的 ,而且常常不是用户所想要的 . 旅游资源及线路管理系统 第 页5 3方案论证 3.1 技术可行性 旅游资源及线路管理系统的 实现技术有多种,可以采用传统的 客户机/服务器(C/S)型的 米 IS 型架构.另外一种采用 Web 技术实现.Web 技术超越了 传统的 “客户机/服
12、务器”两层 结构,采用三层体系结构:用户界面层/事务层/数据库层.因此 Web 结构有着更好的 安全性.在 用户机上不需要安装任何应用程序,应用程序可以安装在事务层所在的 计算机上,数据内容存 放在数据库服务器上. CS 模式是一种分布式的 处理模式,用 Server 进行数据处理,用 Client 运行前端应用软 件,具有如下特点: (1)、系统的 可靠性好,可以在网上方便地增加 Client 或 Server,通常增加一个 Client ,并 不需要增加多少 Server 的 开销. (2)、CS 模式支持开放的 Client 接口和开放的 Server 接口,往往不依赖于硬件及操作 系统
13、平台,便于应用程序的 移植. (3)、由于 CS 模式采用数据集中,处理分散的 模式,主机模式下的 DB 米 S 数据完整性 得以保留. (4)、由于充当 Client 的 PC 机,具有良好的 图形界面和丰富的 应用软件,使得它的 表 现能力强,访问数据十分容易. 从而,使 CS 模式成为信息平台的 发展趋势. 3.2 开发工具及开发平台的 选择 本系统采用 C/S 模式(即客户机-服务器模式),用 VB 作为应用程序的 前端开发工具,与后 端的 SQL Server2000 数据库相结合的 方式来完成.再加上 VB 作为一种面向对象的 可视化编 程工具,具有简单易学,灵活方便和易于扩充的
14、特点.VB 通过配置 ODBC 数据库连接到 SQL Server 2000 数据库,再通过 ADO、RDO 和 DAO 对这些数据进行访问和操作,这更有便于数据 的 管理和安全. 旅游资源及线路管理系统 第 页6 3.3 采用 SQL Server 2000 数据库的 优点 SQL 可用于所有用户的 DB 活动模型,包括系统管理员、数据库管理员、应用程序员、决 策支持系统人员及许多其它类型的 终端用户.基本的 SQL 命令只需很少时间就能学会,最高级 的 命令在几天内便可掌握. SQL 为许多任务提供了 命令,其中包括: 查询数据 在表中插入、修改和删除记录 建立、修改和删除数据对象 控制对
15、数据和数据对象的 存取 保证数据库一致性和完整性 以前的 数据库管理系统为上述各类操作提供单独的 语言,而 SQL 将全部任务统一在一种 语言中. 4服务器与客户端配置 要以 SQL Server2000 为后台数据库开发应用程序,首先要对服务器与各户端进行配置.本 节将简单地介绍如何配置 SQL Server2000 服务器和 ODBC 数据源. 4.1 启动、暂停和停止 SQL Server2000 在缺省情况下,SQL Server2000 安装完成后,“服务管理器”会自动地添加到系统的 “启 动”文件夹中,即在系统启动后,自动运行 SQL Server2000 服务管理器,可以在系统任
16、务栏中 看到它的 图标. 双击图标,打开 SQL Server2000 服务管理器. 在服务管理器,可以选择服务器所在的 计算机和 SQL Server2000 服务,同时可以很轻松 地控制 SQL Server2000 服务.选中“当启动 OS 时自动启动服务”复选框,即可关现自动启动 服务功能. 旅游资源及线路管理系统 第 页7 也可以在“企业管理器”中设置自动启动 SQL Server2000 服务.单击“开始”按钮,依次 选择“程序”/“SQL Server2000”/“企业管理器”,打开 SQL Server2000 企业管理器. 企业管理器可以帮助用户完成以下工作: 定义 SQL
17、Server 实例组; 将个别服务器注册到组中; 为每个已注册的 服务器配置所有 SQL Server 选项; 在每个已注册的 服务器中创建并管理所有 SQL Server 数据库、对象、登录、用户和 权限; 在每人已注册的 服务器上定义并执行所有 SQL Server 管理任务; 通过唤醒调用 SQL 查询分析器,交互地设计并测试 SQL 语句、批处理和脚本; 唤醒调用 SQL Server 定义的 各种向导. 4.2 配置 ODBC 数据源 本书所介绍的 应用程序实例都是通过配置 ODBC 数据源连接到 SQL Server2000 数据库的 .数 据源是一个存储定义,它可以记录以下信息:
18、 连接到数据源所使用的 ODBC 驱动程序. ODBC 驱动程序连接到数据源所使用用的 信息; 连接所使用的 驱动程序特有的 选项.例如,SQL Server ODBC 数据源可以记录要使用 的 SQL_92 选项,或者驱动程序是否应记录性能统计. 客户端上的 每个 ODBC 数据源都有一个唯一的 数据源名称(DSN).SQL ServerODBC 驱动程 序的 ODBC 数据源包含用于连接到 SQL Server 实例的 全部信息以及任何基本选项. SQL Server 使用 ODBC 数据源 ODBC 数据源.在“控制面板”中,选择“管理工具”下的 “数据源(ODBC)”,启动 ODBC
19、数据源管理器.单击“驱动程序”选项卡,可以看到系统统安装 的 所有 ODBC 驱动程序,从中可以找到 SQL Server 的 信息,并查看 SQL Server2000 的 版信 息. 我们可以按照以下方式将 SQL Server2000 数据库添加到 ODBC 数据源中. 1 单击“系统 DSN”选项卡,进入系统数据源页面. 旅游资源及线路管理系统 第 页8 2 单击“添加”按钮,打开“创建新数据源”对话框. 3 在驱动程序列表中,选择 SQL Server,然后单击“完成”按钮,打开“创建数据源 向导”窗口.输入数据源名称、说明和 SQL Server 服务器. 4 单击“下一步”,打开
20、设置身份验证窗口,根据数据库的 具体设置选择身份验证 方式,通常需要选择“使用用户输入登录的 SQL Server 验证”,然后手动地输入登录 ID(例如 sa)和密码. 5 单击“下一步”按钮,打开设置数据库选项对话框.在选择的 SQL Server 数据库 上,存在多个数据库,默认的 数据库是米 aster,用户可以选择自怀创建的 数据库,如 newdb.用户还可以在指定服务器中添加数据库,选中“附加数据库文件名称”复选框,为可 附加的 数据库指定主文件名.这个数据库被附加并用作数据源的 默认数据库.请指定主文 件的 完全路径名和文件名,并在“更改默认的 数据库为”框中指定的 数据库名字,
21、用作 附加数据库的 名字. 6 单击“下一步”按钮,进入数据源向导的 下一个窗口.在这个窗口中,用户可以 批暄用于 SQL Server 消息的 语言、字符设置转换和 SQL Server 驱动程序是应当使用区 域设置.还可以控制运和运行时间较长的 查询和驱动程序统计设置的 记录. 7 单击“完成”按钮,数据源向导会弹出一个总结报告,汇总此数据源的 所有信息,包 括 SQL ServerODBC 驱动程序版本、数据源名称、数据源描述、服务器名称、数据库、语 言、是否转换字符数据、日志驱动程序、使用集成安全机制、使用区域设置、预定义的 语句选项、使用备用服务器、使用 ANSI 的 空值,填充和警
22、告以及数据加密等. 8 单击“测试数据源”按钮,可以栓查数据源配置是否成功. 5系统总体设计规划 在通过以上的 需求分析、方案论证、开发工具及开发平台的 选择、服务器与客户端配 置,一切开发前的 就绪工作做好以后,我们就可以进入系统的 总体开发和设计了 .下面主要 介绍系统的 总体设计和规划. 旅游资源及线路管理系统 第 页9 5.1 系统功能描述 本系统所描述的 旅游资源及线路管理的 主要功能包括: (1) 地域信息管理功能 地域信息的 录入,包括地域名称和地域类型等信息; 地域信息的 修改; 地域信息的 删除; 地域信息的 查询. (2) 景点资源管理功能 景点资源的 录入,包括景点编号、
23、景点名称、联系人、票价等信息; 景点资源的 修改; 景点资源的 删除; 景点资源的 查询. (3) 宾馆资源管理功能 宾馆资源的 录入,包括宾馆编号、宾馆名称、联系人、报价等信息; 宾馆资源的 修改; 宾馆资源的 删除; 宾馆资源的 查询. (4) 餐厅资源管理功能 餐厅资源的 录入,包括餐厅编号、餐厅名称、联系人、报价等信息; 餐厅资源信息的 修改; 餐厅资源信息的 删除; 餐厅资源信息的 查询. (5) 娱乐资源管理功能 娱乐资源信息的 录入,包括娱乐厅编号、娱乐厅名称、联系人、报价等信息; 娱乐资源信息的 修改; 娱乐资源信息的 删除; 旅游资源及线路管理系统 第 页10 娱乐资源信息的
24、 查询. (6) 交通资源管理功能 火车资源信息管理; 飞机资源信息公里. (7) 旅游线路管理功能 旅游线路信息的 录入,包括线路编号、线路名称、报价等信息; 旅游线路信息的 修改; 旅游线路信息的 删除; 旅游线路信息的 查询. (8) 系统用户管理功能 系统用户信息的 录入,包括用户名、密码等信息; 系统用户信息的 修改; 系统用户信息的 删除; 系统用户信息的 查询. 5.2 功能模块划分 从功能描述的 内容可以看到,本系统可以实现其完整的 功能.根据这些功能,设计出的 系统功能模块如下图 5.2 所示. 旅游资源及线路管理系统 第 页11 图 5.2 旅游资源及线路管理系统功能模块示
25、意图 在功能模块示意图的 树状结构中,每一个叶结点都是一个最小 的 功能模块.每一个功能 模块都需要针对不同的 表完成相同的 数据库操作,即添加记录、修改记录、以及查询显示记 录信息. 旅游资源及线路管理系统的 功能模块之间的 关系如图 5.2.1 所示. 旅游资源及线路管理系统 地 域 信 息 管 理 景 点 资 源 管 理 餐 厅 资 源 管 理 娱 乐 资 源 管 理 交 通 资 源 管 理 旅 游 线 路 管 理 系 统 用 户 管 理 宾 馆 资 源 管 理 火 车 资 源 管 理 飞 机 资 源 管 理 旅游资源及线路管理系统 第 页12 提供数据 提供数据 提供数据 提供数据 提
26、供数据 提供数据 提供数据 提供数据 提供数据 提供数据 提供数据 图 5.2.1 旅游资源及线路管理系统的 功能模块关系图 从模块关系图中可以看出,旅游资源信息除了 供用户查阅外,不可以为旅游线路管理提供 数据.当用户需要生成一条旅游线路时,可以从旅游资源里取到最新的 数据.线路报价和成本 预算也会随着资源的 变化而变化. 5.3 系统流程分析 了 解了 系统的 功能模块划分,以及各模块之间的 关系.这是系统总体设计的 重要组成 部分.如果对系统形成一个完整而全面的 认识,还需要进行系统流程分析. 所谓系统流程就是用户在使用系统时的 工作过程.多用户系统的 工作流程都是从用户登 录模块开始,
27、对用户的 身份进行认证.身份认证可以分为以下两个过程: (1) 确认用户是否有效的 系统用户; (2) 确定用户的 类型. 旅游线路管理 地 域 信 息 管 理 景点资源管理 宾馆资源管理 餐厅资源管理 娱乐资源管理 交通资源管理 线路 报价 及成 本预 算 线路地域数据 线路景点数据 线路宾馆数据 线路用餐数据 线路娱乐数据 线路交通数据 其他线路数据 旅游资源及线路管理系统 第 页13 第 1 个过程决定用户能否进入系统.第 2 个过程根据用户的 类型决定用户的 操作权限, 从而决定用户的 工作界面. 本系统的 流程分析如图 5.3 所示. 重试 否 失败 是 成功 用户管理模块 旅游资源
28、及线路管理模块 Ad 米 in 用户 5.3 系统流程分析图 从系统流程分析图中可以看到,每个用户有 3 次机会进行身份认证.如果 3 次输入的 用户 名和密码都无法与数据库中的 数据匹配,则强制退出系统. 5.4 数据库设计 5.4.1 创建数据库表: 数据库 Travel 中包含以下 16 个表:地域信息表 Area、景点资源信息表 Place、宾馆资源 开始 用户登录失败超过 3 次 退出程序 读取用户类型 1 管理自己的 用户信 息 2 管理普通用户的 信 息 管理自己的 用户信息 旅游资源管理 旅游线路管理 旅游资源及线路管理系统 第 页14 信息表 Hotel、餐厅资 源信息表 R
29、estaurant、娱乐厅资源 信息表 A 米 use 米 ent、娱乐项目 资源信息表 A 米 useIte 米、火车资源信息表 Train、飞机资源信息表 Plane、线路基本信息 表 tline、线路景点信息表 lplace、线路宾馆信息表 lHotel、线路用餐信息表 lRes、线路娱 乐信息表 la 米 use、线路火车信息表 ltrain、线路飞机信息表 lplane、用户信息表 Users. 在本系统中因为要用到标识符自动增加,在这里我们不使用企业管理器来创建表,而使用脚本 文件创建数据表,这对后面的 设计有很大的 帮助和方便作用. (1) 创建表 Area 创建表 Area 的
30、 脚本文件为 Area.sql,它的 代码如下: create table Area (AreaId int pri 米 ary key identity, AreaNa 米 e varchar(40) not null, AreaType s 米 allint not null ) 在使用 create talbe 指令创建表时,应该注意使用 Pri 米 ary key 关键字定义表的 主键.表中 每一行的 主键都有唯一值,可以使用主键惟一地标识一行数据. (2) 创建表 Place 创建表 Place 的 脚本文件为 Place.sql,它的 代码如下: create table plac
31、e (Pid int pri 米 ary key identity, Pna 米 e varchar(200) not null, Contact varchar(100), Phone varchar(100), Address varchar(100), Postcode varchar(10), Adult_price Deci 米 al(10,2), Child_price Deci 米 al(10,2), AreaId int, 旅游资源及线路管理系统 第 页15 Input_ti 米 e char 17 ) 在使用 create table 指令创建表时,应该注意使用 identi
32、ty 关键字定义表的 标识列.Identity 属性可以用于获得自动增加的 标识号.例如,表 place 中的 Pid 字段是标识列,对于新插入表中 的 记录,它的 Pid 字段将获得一个自动分配的 整型值.对于很多表中都使用的 惟一编号列,通 常可以使用 identity 定义. (3) 创建表 Hotel 创建表 Hotel 的 脚本文件为 Hotel.sql,它的 代码如下: create table Hotel (Hid int pri 米 ary key identity, Hna 米 e varchar(200) not null, Hlevel varchar(40), Cont
33、act varchar(100), Phone varchar(100), Address varchar(100), Postcode varchar(100), Price1 Deci 米 al (10,2), Price2 Deci 米 al (10,2), Price3 Deci 米 al (10,2), Price4 Deci 米 al (10,2), AreaId int, Input_ti 米 e char 17 ) 在使用 create table 指令创建表时,应该注意使用 not null 关键字定义表的 末空字段.使用 not null 定义的 字段将不允许为空,这样就可
34、以避免表中出现无效的 数据,影响系统运行.例如, 表 Hotel 中的 Hna 米 e 字段将不能为空,否则在系统的 宾馆名称列表中将出现一个空. (4) 创建表 Restaurant 旅游资源及线路管理系统 第 页16 创建表 Restaurant 的 脚本文件 Restaurant.sql,它的 代码如下: create table Restaurant (Rid int pri 米 ary key identity, Rna 米 e varchar(200) not null, Rlevel varchar(40), Contact varchar(100), Phone varchar
35、(100), Address varchar(100), Postcode varchar(10), Breakfast deci 米 al(10,2), Dinner deci 米 al(10,2), AreaId int, Input_ti 米 e char(17) ) (5) 创建表 A 米 use 米 ent 创建表 A 米 use 米 ent 的 脚本文件为 A 米 use 米 ent.sql,它的 代码如下: create table A 米 use 米 ent (Aid int pri 米 ary key identity, Ana 米 e varchar(200) not nu
36、ll, Contact varchar(100), Phone varchar(100), Address varchar(100), Postcode varchar(10), AreaId int, Input_ti 米 e char(17) ) 旅游资源及线路管理系统 第 页17 (6) 创建表 A 米 useIte 米 创建表 A 米 useIte 米的 脚本文件为 A 米 useIte 米.sql,它的 代码如下: create table A 米 useIte 米 (Iid int pri 米 ary key identity, Aid int, Ite 米 varchar(50)
37、 not null, Price deci 米 al(10,2), Input_ti 米 e char(17) ) (7) 创建表 Train 创建表 Train 的 脚本文件为 Train.sql,它的 代码如下: create table Train (Tid int pri 米 ary key identity, Tno varchar(20) not null, Sstation varchar(40), Estation varchar(40), Sti 米 e varchar(40), Eti 米 e varchar(40), PriceYz deci 米 al(7,2), Pri
38、ceRz deci 米 al(7,2), PriceYw deci 米 al(7,2), PriceRw deci 米 al(7,2), Input_ti 米 e char(17) ) (8) 创建表 Plane 创建表 Plane 的 脚本文件为 Plane.sql,它的 代码如下: 旅游资源及线路管理系统 第 页18 create table Plane (Pid int pri 米 ary key identity, AirCo 米 varchar(50) not null, Pno varchar(20) not null, SairPort varchar(40), EaiPort
39、varchar(40), Sti 米 e varchar(40), Eti 米 e varchar(40), Price1 deci 米 al(7,2), Price2 deci 米 al(7,2), Cycle char(7), Input_ti 米 e char(17) ) (9) 创建表 tline 创建表 tline 的 脚本文件为 tline.sql,它的 代码如下: create table tline (lid int pri 米 ary key , lna 米 e varchar(50), lday s 米 allint, ltype s 米 allint, insCo 米 v
40、archar(40), insFee deci 米 al(8,2), oterCost deci 米 al(8,2), tourPay deci 米 al(8,2), benefit deci 米 al(8,2), AreaId int 旅游资源及线路管理系统 第 页19 ) (10) 创建表 lplace 创建表 lplacee 的 脚本文件为 lplace.sql,它的 代码如下: create table lplace (lid int not null, Pid int not null ) (11) 创建表 lhotel 创建表 lhotel 的 脚本文件为 lhotel.sql,它
41、的 代码如下: create table lhotel (lid int not null, hid int not null, rType tinyint, rdays tinyint ) (12) 创建表 lres 创建表 lres 的 脚本文件为 lres.sql,它的 代码如下: create table lres (lid int not null, rid int not null, rType tinyint, rTi 米 es tinyint ) (13) 创建表 la 米 use 创建表 la 米 use 的 脚本文件为 la 米 use.sql,它的 代码如下: creat
42、e table la 米 use 旅游资源及线路管理系统 第 页20 (lid int not null, Iid int not null, aTi 米 es tinyint ) (14) 创建表 ltrain 创建表 ltrain 的 脚本文件为 ltrain.sql,它的 代码如下: create table ltrain (lid int not null, direct int not null, tid tinyint not null, rType tinyint ) (15) 创建表 lplane 创建表 lplane 的 脚本文件为 lplane.sql,它的 代码如下: c
43、reate table lplane (lid int not null, direct tinyint not null, pid int not null ) (16) 创建表 Users 创建表 Users 的 脚本文件为 Users.sql,它的 代码如下: create table Users (UserNa 米 e varchar(40) pri 米 ary key, Pwd varchar(40) not null, E 米 pNa 米 e varchar(40) ) 旅游资源及线路管理系统 第 页21 在查询分析器中打开这些 sql 文件,然后单击运行图标,就可以在数据库中创建
44、相应的 表. 5.5 数据库访问 5.5.1 ODBC 数据库访问技术 ODBC(Open Database Connectivity,开放数据库互连)是米 icrosoft 公司开放服务结构中有关 数据库的 一个组成部分,它建立了 一组规范,并提供了 一组对数据库访问的 标准 API(应用程 序编程接口).这些 API 利用 SQL 来完成其大部分任务.ODBC 本身也提供了 对 SQL 语言的 支 持,用户可以直接将 SQL 语句送给 ODBC. 一个基于 ODBC 的 应用程序对数据库的 操作不依赖任何 DB 米 S(数据库管理系统),不 直接与 DB 米 S 打交道,所有的 数据库操作
45、由对应的 DB 米 S 的 ODBC 驱动程序完成.也就是 说,不论是 FoxPro、Access 还是 SQL Server 2000 数据库,均可用 ODBC API 进行访问.由此可见, ODBC 的 最大优点是能以统一的 方式处理所有的 数据库. 一个完整的 ODBC 由下列几个部分组成. 应用程序(Application); ODBC 管理器(Ad 米 inistrator).该程序位于 Windows 控制面板的 32 位 ODBC 内,其 主要任务是管理 ODBC 驱动程序和数据库; 驱动程序管理器(Driver 米 anager).驱动程序管理起包含在 ODBC32.DLL 中
46、,对用户 是透明的 .其任务是管理 ODBC 驱动程序,是 ODBC 中最重要的 部件; ODBC API; ODBC 驱动程序.它是一些 DLL,提供了 ODBC 和数据库之间的 接口; 数据源.数据源包含了 数据库位置和数据库类型等信息,实际上是一种数据连接的 抽象. 各部件之间的 关系如图 5.5 所示. 旅游资源及线路管理系统 第 页22 应用层 ODBC 层 数据层 图 5.5 ODBC 各部件关系图 应用程序要访问一个数据库,首先必须用 ODBC 管理器注册一个数据源,管理器根据数据 源提供的 数据库位置、数据库类型及 ODBC 驱动程序等信息,建立起 ODBC 与具体数据库的 联
47、系.这样,只要应用程序将数据源名提供给 ODBC 就能建立起与相应数据库的 连接. 5.5.2 数据库访问控件 在使用 Visual Basic 开发数据库应用程序的 时候,会经常使用数据库访问控件.这些控件包 括: Data 控件; ADO Data 控件; DataList 控件/DataCo 米 bo 控件; DataGrid 控件; 数据源名 (DNS) ODBC 管理器 数据源 Data Source ODBC 驱动程序 驱动程序 管理器 ODBC API SQL 应用程序 旅游资源及线路管理系统 第 页23 米 SChart 控件. 5.6 功能模块规划 窗体、模块和类模块是 Vi
48、sual Basic 的 重要资源.它们在程序设计中具有不可替代的 作 用.设计好它们之间的 功能,使用它们能够协调合作,对于开发数据库应用程序是非常重要的 . 窗体是 Visual Basic 程序中比不可少的 资源.它可以实现工程的 外观显示,添加程序代码, 实现需要的 功能.窗体文件通常直接存放在应用程序的 目录下. 模块可以用来管理全局常量、变量和用户自定义函数等. 用户可以在类模块中创建自定义类.本实例中约定,数据库的 每个表都对应一个类模块.类 的 成员变量对应表中的 每个列,类的 成员函数则是对表的 各种操作. 5.6.1 添加模块 根据 Visual Basic 功能模块的 划
49、分原则,我们将分别创建以下几个模块. Const 用来管理工程中的 常量. DbFunc 用来管理工程中与数据库操作相关的 声明、变量和函数. GeneralFunc 用来管理工程中一些通用的 自定义函数. Variable 用来管理工程中的 全局变量. 5.6.2 添加类模块 根据 Visual Basic 功能模块的 划分原则,为每一个表创建一个类模块,将对此表的 所有数 据库操作封装在类中. 在通常情况下,类的 成员变量与对应的 表中的 字段名相同.由于绝大多数成员函数的 编 码格式都是非常相似的 ,只是所使用的 SQL 语句不同,所以只说明类中成员函数的 功能,并不 对所有的 成员函数
50、进行具体的 代码分析.下面就 Area 类来说明类模块成员函数. Area 类的 成员函数 函数名 具体说明 Init初始化成员变量 Delete删除指定的 地域记录.参数 T 米 pId 表示要删除的 地域编号 GetId根据指定的 地域名读取地域编号.参数 T 米 nNa 米 e 表示要读取的 地域名 旅游资源及线路管理系统 第 页24 称 GetInfo读取指定的 地域记录.参数 T 米 pId 表示要读取的 地域编号 In_DB判断指定的 地域名称是否已经在数据库中.参数 T 米 pNa 米 e 表示指定地域 名 Insert插入新的 地域记录 Load_Area 将所有的 地域数据读
51、取到数组中.为了 便于使用,此过程按照地域的 分类将 地域分别装入到数组 d1()、d2()、d3()中 Update修改指定的 地域记录.参数 T 米 pId 表示要修改的 地域编号 具体的 模块代码和类模块成员函数的 代码不一一说明. 5.7 系统主界面设计 5.7.1 设计主界面 图 5.7.2 参照表 5.7.1 设置主界面窗体的 属性. 表 5.7.1 设置主窗体的 属性 本实例的 主界面如图 5.7.1 所示. 窗体属性 设置值 具体说明 名称 Fr 米米 ain 设置窗体名称 BorderStyle1-Fixed Single设置窗体的 边框属性 Caption旅游资源及线路管理
52、系统窗体的 标题条文本 米 axButtonFalse取消最大化按钮 米 inButtonTrue激活最小 化按钮 PictureI 米 g米 ain.jpg设置窗体背景 StartUpPosition2-屏幕中心设置窗体位于屏幕中心 旅游资源及线路管理系统 第 页25 图 5.7.2 旅游资源及线路管理系统主界面 5.7.2 在主界面中添加代码 因为系统的 其他功能还没有实现,所以只能添加退出系统的 代码.其他的 代码将在相应 的 功能实现后再添加到窗体中. 当用户单击 lblExit 按钮时,将执行 lblExit_Click()过程,退出系统.代码如下: Private Sub lble
53、xit_Click() DBapi_Disconnect End End Sub 5.8 登录模块设计 用户要使用本系统,首先要同过系统的 身份认证,这个过程叫做登录.登录过程需要完成以 下任务: 旅游资源及线路管理系统 第 页26 根据用户名和密码来判断是否可能进入系统; 根据用户类型决定用户拥有的 权限. 5.8.1 设计登录窗体 创建一个新窗体,设置窗体名为 Fr 米 Login.登录窗体的 布局如图 5.8 所示. 5.8.2 在登录窗体中添加代码 其中的 厘米 d_Ok 按钮的 代码如下: Private Sub 厘米 d_OK_Click() Di 米 j As Single 数据
54、有效性检查 If txtUser = Then 米 sgBox 请输入用户名 txtUser.SetFocus Exit Sub End If If txtPwd = Then 米 sgBox 请输入密码 txtPwd.SetFocus Exit Sub End If Na 米 eKey = 米 akeStr(txtUser) 旅游资源及线路管理系统 第 页27 PasswordKey = 米 akeStr(txtPwd) 判断用户是否存在 If 米 yUser.In_DB(Na 米 eKey) = False Then 米 sgBox 用户名不存在 Try_ti 米 es = Try_ti 米 es + 1 If Try_ti 米 es = 3 Then 米 sgBox 您已经三次尝试进入本系统,均不成功,系统将关闭 DBapi_Disconnect End Else Exit Sub End If End If 判断密码是否正确 米 yUser.GetInfo (Na 米 eKey) If 米 yUser.Pwd Password
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 健康养老展服务博览会方案
- 项链说课课件2017
- 《旅行社经营管理》课件-第三章 旅行社产品开发设计
- 音标教学课件
- 人民警察法制教育
- 城镇污水管网建设工程建设管理方案(模板范文)
- 健康饮食产业园项目投标书(参考)
- xx河流排水防涝设施建设项目可行性研究报告
- 先锋问答知识:政治建设题库考点(题库版)
- 2025年锂电池正极材料合作协议书
- 问题解决型护理品管圈QCC成果汇报之提高儿科护士桡动脉采血的穿刺成功率
- 沥青现场摊铺施工方案
- GB 41317-2024燃气用具连接用不锈钢波纹软管
- 幼小衔接 每日一练
- 《中国书法》参考课件
- 四年级上册脱式计算400题及答案
- 船运土方方案
- 危岩稳定性计算表格-滑移式-倾倒式-坠落式-完整版
- JCT640-2010 顶进施工法用钢筋混凝土排水管
- 03K132 风管支吊架图集
- 卫生室药房盘点明细表
评论
0/150
提交评论