计算机信息技术专业毕业论文:商务酒店客房管理系统的设计与实现_第1页
计算机信息技术专业毕业论文:商务酒店客房管理系统的设计与实现_第2页
计算机信息技术专业毕业论文:商务酒店客房管理系统的设计与实现_第3页
计算机信息技术专业毕业论文:商务酒店客房管理系统的设计与实现_第4页
计算机信息技术专业毕业论文:商务酒店客房管理系统的设计与实现_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

1、毕业设计(论文)任 务 书拟题单位 计算机科学与技术学院 审题人 题目名称 商务酒店客房管理系统的设计与实现 题目性质 真实题目 虚拟题目学生学号 20032624 指导教师 李绘卓、吕琳 学生姓名 王勇 技术职称 讲师 、讲师 专业名称 计算机科学与技术 指导小组组长 范太华 学生院系 计算机科学与技术学院 技术职称 副教授 学生层次 大学本科 所在单位 计算机科学与技术学院 2006 年 11月 20日毕业设计(论文)内容1 题目概况随着人们生活水平和消费意识的提高刺激了酒店业的发展,现在酒店业已不再是提供给人们一个吃住行的场所,而是集吃、住、行、娱乐、健身和购物为一体的多功能服务体系。在

2、这种社会需求下,对酒店业所提供的服务有了更高的要求,设计一套实用而且方便的系统进行酒店客房的管理,以提高酒店业的管理水平,提高了员工的工作效率和酒店的服务质量。本题目的目标是实现一个酒店客房管理系统,通过本系统,可以方便快捷对酒店客房系统进行有效的管理。2 设计任务本次设计包括3部分,具体内容如下。 商务酒店客房管理系统的设计和实现按照软件工程规范完成系统需求分析与整体设计,根据分析和设计完成系统代码的编制。根据商务酒店客房管理的功能需求,该系统要求的主要功能包括权限管理,客房管理,入住、退房、结账流程管理,收支管理。此外系统还必须提供给用户浏览、查询、统计信息功能,并具有一定的容错性,对用户

3、的误操作或其它非法输入数据能有效地处理。建议采用c/s模式开发,以sql server作为后台数据库系统,开发工具采用delphi。 商务酒店客房管理系统的测试采用功能测试的方法设计测试用例对系统中主要功能进行测试分析。 毕业设计说明书的撰写3 毕业设计要求本次毕业设计期间要求同学自觉遵守学校关于毕业设计管理规章制度,按照计算机科学与技术学院毕业设计指南(2006年修订)要求来完成本次毕业设计的内容,同时对设计任务的3部分内容,分别提出以下要求。 商务酒店客房管理系统的设计和实现1) 需求分析包括功能和非功能需求;2) 划分系统的功能模块,模块划分符合实际需求;3) 设计出该系统的数据库,设计

4、满足功能要求;4) 系统界面设计美观,操作直观、简便,界面风格一致。5) 对系统各操作流程要符合实际环境需求。6) 代码编写符合代码编写规范;7) 符合软件工程相关开发规范。 商务酒店客房管理系统的测试测试用例要符合功能性测试要求,有代表性。对测试不通过的功能,进行相应的修改并进行回归测试。 毕业设计论文撰写1) 真实反映系统的设计、实现、测试过程;2) 符合本科毕业设计(论文)撰写规范(2006年修订)要求;3) 在论述中采用图文结合的方式。4 验收内容1) 系统功能设计达到任务书要求,各功能模块运行正常,并能在指定的计算机上演示;2) 按要求完成毕业设计说明书的撰写;5 进度要求在接到该任

5、务书之日起,即可开始了解毕业设计任务,熟悉开发工具与环境。具体时间进度安排如下:1) 第1-2周 调研并资料搜集;2) 第3-5周 根据系统调研确定系统方案;3) 第6-10周 系统设计、编码及调试;4) 第11-12周系统测试及完善;5) 第13-15周 设计说明书撰写与修改。 学院负责人: (签字) 年 月 日西南科技大学毕业设计(论文)成绩考核表过程评分评阅成绩答辩成绩总成绩 指导教师评语成绩 签字 年 月 日设计(论文)评阅教师评语成绩 签字 年 月 日答辩小组评语成绩 组长签字 年 月 日毕业设计(论文)领导小组推优评语组长签字 年 月 日商务酒店客房管理系统的设计与实现摘要:随着信

6、息技术的发展,酒店客房管理信息化成为酒店管理的新热点。本文论述了分析、开发、设计一个酒店管理系统的过程。该系统融入酒店科学、规范的现代管理思想,能够提高各业务部门本身的工作效率。系统采用delphi7.0和sql server开发而成。本文介绍了课题相关内容,并通过设计分析,划分数据库,将系统划分为六个主要功能模块:系统用户管理、客房管理、入住登记、退房结算、收银管理、查询管理。其中涉及的功能主要包括三方面:系统管理、客房信息管理和收支管理。这些模块基本上满足了酒店常用的功能。为了保证系统的安全运作和酒店商业信息安全,本系统使用简单的权限机制,对每个操作员的操作进行严格规定。使系统达到一定的安

7、全程度。系统通过黑盒测试,各个模块设计目标基本达到,系统运行正常。关键词:商务酒店客房管理;入住登记;退房结算;收银管理design and realization of business hotel room management system abstract: with the development of it, hotel guest room administration informatization becomes a new hot spot in the hotel manages. this paper discusses procedure of analysis, d

8、eveloping, designing of the hotel mis. the system is designed base on the ideal of scientific and module management, which can improve the efficiency of each department of hotel. the system developed by delphi7.0 and sql server.this paper introduced the related contents of topic. base on design anal

9、ysis, the system divide six main functions, such as user management, guest room management, check, checkout settlement, the cash register management, and the inquiry management. these modules could meet the requirement of hotel. in order to guarantee the safe operation and the information security o

10、f the system, this system use simple jurisdiction mechanism, carries on the strict stipulation to each operators operation. this measure could make the system reach a certain degree of safety.after the black box test, each module could basically achieve the goal of design, the system run normally.ke

11、ywords:business hotel room management, check, checkout settlement, the cash register management目 录第一章 绪论11.1开发的背景11.2课题的来源11.3 研究课题的动态21.4课题解决的主要问题2第二章 商务酒店客房管理系统的需求分析32.1系统功能要求32.1.1系统管理员需求32.1.2系统用户管理32.1.3系统的非功能性要求42.2系统性能要求42.3系统数据要求42.4系统的约束52.5系统分析建模52.5.1数据流图52.5.2 实体-联系图62.5.3数据字典8第三章 商务酒店客房

12、管理系统的设计123.1解决方案设计123.2系统模快设计123.3 系统数据库设计143.3.1系统的实体关系模型图143.3.2数据库中表的设计15第四章 商务酒店客房管理系统的实现204.1开发平台的介绍204.2系统流程图214.3系统数据库的连接214.4系统登陆的实现224.5系统主界面的实现244.6系统用户管理功能的实现254.7住房登记功能的实现294.8客房设置功能的实现314.9退房结算功能的实现344.10收银统计功能的实现364.11信息查询功能的实现374.12收银统计功能的实现39第五章 商务酒店客房管理系统的测试415.1 系统测试环境415.2 系统测试方法4

13、15.3 系统测试总结50结论51致谢52参考文献53第一章 绪论1.1开发的背景 随着各类人员流动规模的不断扩大,客房的数量也急剧增加,有关客房管理的各种信息量也在不断的成倍增长。面对如此庞大的信息量,就需要有客房信息管理系统来提高客房管理工作的效率。而传统手工的客房信息管理,其管理过程繁琐而复杂,执行效率也相当低,并且易于出错。故而通过实现这样管理系统,可以很容易地做到信息的规范管理和快速查询,从而实现客房信息管理的系统化、规范化和自动化,这样不仅减少了相关管理的工作量,而且还提高了管理效率,降低了相应的管理成本。1.2课题的来源 当今,席卷全球的信息化大潮把信息管理推到了时代发展的前沿,

14、信息管理系统已经成为全社会注视的热点。随着科学技术的发展,今天的计算机已经深入到社会和生活的各个领域,广泛的应用于农业生产、国防和科研领域,尤其在信息管理系统方面其发展的规模和应用程度已经成为一个国家现代化水平的重要标志。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已成为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。人们可以将大量的繁琐的工作交给计算机去完成,从而大大提高了工作效率,此外,计算机可以利用长期使用过程中所存贮的大量数据进行数据分析,为管理者进行决策提供可靠的信息资料。现在酒店业已不再是提供给人们一个吃住行的场所,而是集吃、住、行、娱乐、健身和购物为

15、一体的多功能服务体系。在这种社会需求下,对酒店业所提供的服务有了更高的要求,所以,将计算机管理引入酒店业的管理体系当中,无疑对酒店业的服务水平更上一层楼提供了一种有利的支持。计算机管理可令酒店业的运作更加可靠、快捷和高效,不但节省了管理人员宝贵的时间,更是对顾客旅途劳顿的一种慰藉。因此,在酒店业竞争越来越激烈的情况下,必须以管理求生存,向管理要市场。由此设计了这个系统。该管理系统的开发,本着科学化、规范化、系统化的原则,并考虑到酒店的实际情况,具有查询方便、安全保密性好、用户界面友好、容易操作等优点。应用此管理系统后,该酒店对每位客人的具体情况便可以了如指掌,而且在对客人信息进行操作时,节省了

16、大量时间,很大程度上提高了员工的工作效率和酒店的服务质量。1.3 研究课题的动态 近年来,随着我国改革开放的发展,国内的酒店服务业得到了日新月异的发展。现代酒店作为一体化的接待场所,是一个旅游城市的窗口,也可以说是一个小型社会。作为一种以服务为主的无烟工业,世界各国对此行业的重视程度并不亚于其它工业。就目前来看,市面上流行的类似管理系统有很多。但是,对于商务酒店客房管理来说,因为它具有自己的特殊性,因此只需要一个操作方便,功能实用,能同时满足本酒店对相关数据的管理及需求的系统。而我的目标就是在于开发一个功能实用、操作方便,简单明了的商务酒店客房管理系统。 1.4课题解决的主要问题使商务酒店客房

17、管理系统更加的科学化、规范化、系统化,并考虑到酒店的实际情况,使其查询方便、安全保密性好、用户界面友好、容易操作。使得任何一个不懂计算机的酒店人员,经过极短的培训,即可操作本系统。第二章 商务酒店客房管理系统的需求分析2.1系统功能要求本系统主要分了两种用户:系统管理员,系统用户(经理)。两种用户根据需要对系统进行相应的操作。该管理系统主要需要实现功能如下:1 系统用户管理功能。2 实现对客户信息管理的住房登记功能。3 实现对客房出租金融管理退房结算功能。4 实现对当前在住客户查询,历史客户查询和宾客消费查询的信息查询功能。5 实现对客房信息管理的房间设置功能。6 实现对酒店客房每月收入统计的

18、收银统计功能。2.1.1系统管理员需求1 用户信息管理用户管理主要包括用户的添加,用户的删除,用户密码的修改和用户权限的修改。2 房间信息管理房间设置主要包括房间类型管理和客房管理,房间类型管理包括房间类型添加,房间类型修改和房间类型删除,客房管理包括房间添加,房间删除和房间修改。3 统计信息管理收银统计主要包括月收入统计。4 客房出租信息管理出租信息管理主要包括入住登记、退房结算,入住登记包括散客入住,团体入住,房屋预定和修改登记;退房结算包括散客结算,团体结算和取消预定。2.1.2系统用户管理1 用户信息管理用户管理主要包括用户的添加,用户的删除,用户密码的修改和用户权限的修改。2 客房出

19、租信息管理客房出租信息管理主要包括入住登记和退房结算,入住登记包括散客入住,团体入住,房屋预定和修改登记,退房结算包括散客结算,团体结算和取消预定。2.1.3系统的非功能性要求1. 色彩美观、大方,界面友好,让用户能尽可能快的找到自己的所需要的信息。2. 较为优良的查询功能,能在海量数据中找到用户需要的信息。3. 系统风格统一,简洁明快。界面尽量简单化,做到实用、方便,尽量满足不同层次用户的需要。4. 操作过程中应该有友好信息(正确或错误)提示,让用户清楚明白自己所处状态。2.2系统性能要求为了保证系统能够长期、安全、稳定、可靠、高效的运行,商务酒店客房管理系统应该满足一些基本的性能要求:1.

20、 系统处理的准确性和及时性系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足管理者对信息处理的要求。根据数据库接受到的信息,进行相应的处理。2. 系统的易用性和易维护性商务酒店客房管理系统是直接面对管理人员的,而管理人员并非对计算机很熟悉。因此系统的易用性和易维护性就显得特别重要,这样才能使得用户更加熟练运用该系统,以提高工作效率。2.3系统数据要求商务酒店客房管理系统的数据要求应该包括:1. 数据录入和处理的准确性和实时性。2. 数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不

21、可使用,从而可能使得公司和客户的利益受到损害。3. 数据的即时更新才能更好的便于商家的管理和客户的需求。4. 数据完整性对于输入的数据,要为其定义完整性规则,如果不能符合完整性约束,系统应该拒绝该数据。2.4系统的约束1. 人力、资金、时间的约束该系统的目标就是要带给公司看得见的效益,其开发过程中也要考虑到人力、资金和时间的约束。2. 技术的约束计算机技术和产品的发展日新月异以及开发人员技术水平的提高,将会给系统处理带来更多的手段,同时也会带来更加丰富的信息表达形式。2.5系统分析建模 建立两种模型,分别是功能模型(数据流图),数据模型(实体-联系图)。2.5.1数据流图1. 系统的数据流图如

22、下:图2-1基本系统模型数据流图2. 入住登记子系统的数据流图如下:图2-2入住子系统模型数据流图3. 退房结算子系统的数据流图如下:图2-3退房结算子系统模型数据流图2.5.2 实体-联系图1. 系统用户:包括名称,密码和权限。图2-4系统用户实体属性图2. 客户:包括姓名,性别,证件名称,证件号码。图2-5客户实体属性图3. 客房:包括房间号,房间位置,房间类型,房间状态,房间价格,房间折扣和床位数量。图2-6客房实体属性图4. 系统的e-r图:系统图形中包括客房、客户、管理员三个实体和他们之间相互存在的关系。图2-7系统的e-r图2.5.3数据字典1. 房间类型表的数据字典ipo图如下:

23、图2-8房间类型表ipo图2. 操作员信息表的数据字典ipo图如下:图2-9操作员信息表ipo图3. 房间号的数据字典ipo图如下:图2-10房间号ipo图4. 房间信息表的数据字典ipo图如下:图2-11房间信息表ipo图5. 额外消费信息记录表的数据字典ipo图如下:图2-12额外消费信息记录表ipo图6. 散客预定房间信息表的数据字典ipo图如下:图2-13散客预定房间信息表ipo图7. 散客入住信息表的数据字典ipo图如下:图2-14散客入住信息表ipo图8. 散客结算信息表的数据字典ipo图如下:图2-15散客结算信息表ipo图9. 团体入住信息表的数据字典ipo图如下:图2-16团

24、体入住信息表ipo图10. 团体结算信息表的数据字典ipo图如下:图2-17团体结算信息表ipo图11. 消费记录信息表的数据字典ipo图如下:图2-18消费记录信息表 ipo图第三章 商务酒店客房管理系统的设计本章内容:为了实现商务酒店客房管理系统所要实现的主要功能,按照前章需求分析设计其主要模块及数据库。3.1解决方案设计 在本商务酒店客房管理系统项目的前一阶段,也就是需求分析阶段中,已经将系统用户对本系统的需求做了详细的阐述,这些用户需求已经在上一阶段中对客户的数据信息中获得,并在需求规格说明书中得到详尽得叙述及阐明。本阶段已在系统的需求分析的基础上,对商务酒店客房管理系统做总体设计和详

25、细设计。主要解决实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块。在以下的总体设计报告中将对在本阶段中对系统所做的所有总体设计进行详细的说明。详细设计中,在总体设计对商务酒店客房管理系统所做的模块结构设计的基础上,对系统进行详细设计。在以后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在总体设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。3.2系统模快设计 系统用户管理,可设为系统管理员(所有模块都可见),服务部人员(部分模块可见)l 系统管理员能调用的功能模块包括以下几个部分,具体的功能层次图如图3-1所示。住房登记:客人入住登记,房屋预定

26、。退房结算:客人退房结算,取消预定。信息查询:当前客户查询,历史用户查询,宾客消费查询。房间设置:客房管理,房间类型管理。收银统计:月收入统计。图3-1 管理员功能层次图l 服务部人员能调用的功能模块包括以下几个部分,具体的功能层次图如图3-2所示。住房登记:客人入住登记,房屋预定。退房结算:客人退房结算,取消预定。信息查询:当前客户查询,历史用户查询,宾客消费查询。图3-2服务部人员功能层次图3.3 系统数据库设计 本次数据库采用的是microsoft sql server 2000数据库。3.3.1系统的实体关系模型图系统e-r图如2.5.2小节中图2-7所示。从图中可以看出,系统中包括客

27、房、客户、管理员三个实体,和三个实体之间相互的关系。3.3.2数据库中表的设计按照系统的功能分析,可以设计出数据库中的各个表,如下所示。1. 表fjlx主要是介绍客房的类型,价格折扣和床位数量。表3.1 房间类型表序号字段名称数据类型大小默认值可否为空主键外键1客房类型varchar 20无not null是是2房间价格varchar8无not null否否3房价折扣varchar20无not null否否4床位数量int4无not null否否2. 表fjxx主要是介绍不同房间对应的房间号,类型,位置和房间的状态。表3.2 房间信息表序号字段名称数据类型大小默认值可否为空主键外键1房间号va

28、rchar 4无not null是是2客房类型varchar20无not null否是3房间位置varchar20无not null否否4房间状态varchar4无not null否否3. 表glyxx主要介绍系统操作员的相关属性。表3.3 操作员信息表序号字段名称数据类型大小默认值可否为空主键外键1usernamevarchar 16无not null是否2userpasswordchar130无not null否否3权限代码varchar20无not null否否4. 表jztj主要介绍消费的相关信息记录。表3.4消费记录信息表序号字段名称数据类型大小默认值可否为空主键外键1旅客类型var

29、char 30无not null否否2帐单编号varchar20无not null是否3住店日期datetime8无not null否否4离店日期datetime8无not null否否5消费金额money8无not null否否5. 表lkxf主要介绍顾客额外消费项目的信息数据。表3.5 额外消费记录信息表序号字段名称数据类型大小默认值可否为空主键外键1流水号varchar 15无not null是否2房间号int4无not null否否3消费项目varchar20无not null否是4单价money8无not null否否5消费时间datetime8无not null否否6数量varch

30、ar10无not null否否6. 表lkxx主要介绍散客入住相关的登记信息。表3.6 房间散客入住信息表序号字段名称数据类型大小默认值可否为空主键外键1房间号int4无not null是是2姓名varchar20无not null否否3性别varchar10无not null否否4证件名称varchar20无not null否否5证件号码varchar20无not null否否6实收押金money8无not null否否7备注varchar50无null否否7. 表lslkxx主要介绍散客结算时刻的信息数据。表3.7客房散客入住结算清单信息表序号字段名称数据类型大小默认值可否为空主键外键1房

31、间号int4无not null否否2姓名varchar20无not null否否3性别varchar10无not null否否4住店日期datetime8无not null否否5离店日期datetime8无not null否否6证件名称varchar20无not null否否7证件号码varchar20无not null否否8消费金额money8无not null否否9帐单编号varchar20无not null是否10备注varchar50无null否否8. 表lstdxx主要介绍团体结算相关的信息。表3.8 客房团体入住结算清单信息表序号字段名称数据类型大小默认值可否为空主键外键1主房间号

32、int4无not null否否2接待对象varchar20无not null否否3联系单位varchar20无not null否否4联系人varchar20无not null否否5联系电话varchar20无not null否否6人数varchar4无not null否否7住店日期datetime8无not null否否8离店日期datetime8无not null否否9住宿标准varchar20无not null否否10帐单编号varchar20无not null是否11备注varchar50无null否否12房间总数varchar2无not null否否9. 表qxb主要介绍权限的相关信息

33、。表3.9权限信息表序号字段名称数据类型大小默认值可否为空主键外键1权限代码varchar 20无not null是否2权限名称varchar20无not null否否3用户设置varchar20无not null否否4房间设置varchar20无not null否否5备注varchar50无null否否10. 表spxm主要介绍额外消费项目的具体信息。表3.10额外服务信息表序号字段名称数据类型大小默认值可否为空主键外键1项目名称varchar 20无not null是是2单价money8无not null否否11. 表tdxx主要介绍团体入住的相关登记信息。表3.11 房间团体入住信息表序

34、号字段名称数据类型大小默认值可否为空主键外键1主房间号int4无not null是是2接待对象varchar20无not null否否3联系单位varchar20无not null否否4联系人varchar20无not null否否5联系电话varchar20无not null否否6人数varchar4无not null否否7住店日期datetime8无not null否否8住宿标准varchar20无not null否否9备注varchar50无null否否10房间总数varchar2无not null否否12. 表ydxx主要介绍散客预定房间时的相关登记信息。表3.12 房间散客预定信息表

35、序号字段名称数据类型大小默认值可否为空主键外键1房间号int4无not null是是2姓名varchar20无not null否否3预定日期datetime8无not null否否4预住日期datetime8无not null否否5证件名称varchar20无not null否否6实收押金money8无not null否否7证件号码varchar20无not null否否9备注varchar50无null否否根据系统的er图在microsoft sql server2000中设计数据库中表之间的关联关系,如图3-3所示:图3-3商务酒店客房管理系统中表的关系图第四章 商务酒店客房管理系统的实现

36、4.1开发平台的介绍本商务酒店客房管理系统以delphi7.0为开发平台,后台数据库采用sql server2000。delphi是全新的可视化编程环境,为我们提供了一种方便、快捷的windows应用程序开发工具。它使用了microsoft windows图形用户界面的许多先进特性和设计思想,采用了弹性可重复利用的完整的面向对象程序语言(object-oriented language)、当今世界上最快的编辑器、最为领先的数据库技术。delphi实际上是pascal语言的一种版本,但它与传统的pascal语言有天壤之别。一个delphi程序首先是应用程序框架,而这一框架正是应用程序的“骨架”。

37、在骨架上即使没有附着任何东西,仍可以严格地按照设计运行。您的工作只是在“骨架”中加入您的程序。缺省的应用程序是一个空白的窗体(form),您可以运行它,结果得到一个空白的窗口。这个窗口具有windows窗口的全部性质:可以被放大缩小、移动、最大最小化等,但您却没有编写一行程序。因此,可以说应用程序框架通过提供所有应用程序共有的东西,为用户应用程序的开发打下了良好的基础。delphi已经为您做好了一切基础工作程序框架就是一个已经完成的可运行应用程序,只是不处理任何事情。您所需要做的,只是在程序中加入完成您所需功能的代码而已。在空白窗口的背后,应用程序的框架正在等待用户的输入。由于您并未告诉它接收

38、到用户输入后作何反应,窗口除了响应windows的基本操作外,它只是接受用户的输入,然后再忽略。delphi把windows编程的回调、句柄处理等繁复过程都放在一个不可见的覆盖物下面,这样您可以不为它们所困扰,轻松从容地对可视部件进行编程。面向对象的程序设计是delphi诞生的基础。oop立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为是自上而下编程的优胜者。它通过给程序中加入扩展语句,把函数“封装”进windows编程所必需的“对象”中。面向对象的编程语言使得复杂的工作条理清晰、编写容易。说它是一场革命,不是对对象本身而言,而是对它们处理工作的能力而言。对象并不与传统

39、程序设计和编程方法兼容,只是部分面向对象反而会使情形更糟。除非整个开发环境都是面向对象的,否则对象产生的好处还没有带来的麻烦多。而delphi是完全面向对象的,这就使得delphi成为一种触手可及的促进软件重用的开发工具,从而具有强大的吸引力。4.2系统流程图 图4.1程序系统里流程图4.3系统数据库的连接本次系统开发使用ado编程模型,delphi 7.0的ado组件应用delphi组件的内容和使用方式来实现ado数据对象的功能。delphi 7.0 ado面板一共有7个组件:adoconnection、adodataset、adotable、adoquery、adostoredproc、a

40、docommand、rdsconnection。在本次的系统开发过程中,我最多使用到的ado组件是:1. adoconnection:对应着ado数据对象中的connection对象,主要用于建立数据库的连接。2. adoquery:通过sql语言提取数据,可以直接连接到数据库,也可以通过adoconnection连接到数据库。在ado顶层三个对象中connection处在最顶层,用以指定数据源、建立和数据源的连接。adoconnection封装了ado连接对象。adoconnection必须和其他的数据控件连接才有效。由一个adoconnection建立的连接可以被多个ado数据集组件和操作

41、组件通过设置他们的connection属性实现共享。所以作者在本次设计中就是通过使用一个adoconnection,多个adoquery共享adoconnection数据库连接的方式。连接部件adoconnection数据集组件adoquery数据源用户界面数据库(sql)图4-2数据库访问体系结构图建立一个adoconnection连接data,其连接字符串如下:self.adoconnection.connectionstring:=provider=sqloledb.1;password=123;persist security info=true;user id=sa;initial

42、catalog=jdgl;data source=.; /在这里self.adoconnection.connectionstring表示数据库的连接字符串,password=123为数据库登陆密码;user id=sa是数据库登陆名,initial catalog=jdgl 是所连接数据库的名称;“data source=.” 表示本机self.adoconnection.connected := true;4.4系统登陆的实现 用户进入本系统前,首先要经过登录页面进行登录,用户输入用户名和对应的密码,系统进行身份验证,验证不通过时,给出错误信息,并禁止用户进入系统。当验证通过进入系统,显示

43、系统主框架页面,读取本系统包括的模块信息,提供模块接口。系统登陆功能流程图如图4-3所示:图4-3系统登陆流程图系统登陆界面窗体如图4-4放置相应组件,并对各组件进行设置。这里会使用到的ado组件为adoquery:即通过sql语言提取数据,可以直接连接到数据库,也可以通过adoconnection连接到数据库。图4-4系统登陆界面窗体系统显示登陆窗口之后,如果数据库连接验证正确则会显示登陆界面。登陆模块提供了用户身份认证的功能,本次系统得用户身份认证是通过在输入的用户名和密码,同数据库的权限表中的用户名和密码进行比对,比对正确则登陆进入系统,否则提示错误,需要重新输入。系统设置了3次重新输入

44、的机会,如果3次都输入错误,则自动退出系统。它的部分实现代码如下:if recordcount1 then/如果得到的记录数1 那么进行如下操作begin if i=3 then /设置一个循环,使有3次输入密码的机会 application.terminate; messagedlg(密码错误!还有+inttostr(3-i)+次机会,mtconfirmation,mbok,0); i:=i+1; /每循环一次i的值加1exit;endelsebegin mainform.statusbar1.panels3.text:=fieldbyname(username).asstring;end;

45、1. “确定”按钮事件代码处理主要是两个adoquery,一个表示密码和用户名的认证,一个表示操作员所对应的权限。分别如下:adoquery1 :sql.add(select * from glyxx where username=:a and userpassword=:b);parameters.parambyname(a).value:=trim(edit1.text); /把表glyxx中的值赋予变量username, userpasswordadoquery2:sql.add(select * from glyxx where 权限代码=+quotedstr(a)+ and user

46、name=+quotedstr(edit1.text)+); /把glyxx中的值赋予变量username2. “取消”按钮事件代码处理procedure tloginform.bitbtn3click(sender: tobject);begin if messagedlg(确定退出吗?,mtconfirmation,mbyes,mbno,0)=mryes then application.terminate;end;4.5系统主界面的实现 系统主界面窗体如图4-5放置相应的组件,并对各组件进行设置。这里主要会使用到mainmenu组件,用来创建主界面上的目录。图4-5系统主界面窗体部分代码

47、演示如下:“散客入住”按扭事件处理代码,动态创建该事件,具体实现如下:beginapplication.createform(tregisteruser_single,registeruser_single);/创建该入住窗体registeruser_single.showmodal;/显示该窗体registeruser_single.free;/释放该窗体end;beginapplication.createform(tregisteruser_single,registeruser_single);/创建该入住窗体registeruser_single.showmodal;/显示该窗体re

48、gisteruser_single.free;/释放该窗体其它按扭事件处理代码与上“散客入住”按扭事件代码类似,这里就不做过多的介绍。4.6系统用户管理功能的实现 用户管理窗口,主要系统管理员对用户权限和登陆的管理。涉及的数据库中的表为操作员信息表。在此窗口下,管理员可以实现用户登陆信息添加、删除。此功能也主要是对数据库进行操作。在这个窗体里主要使用了lable等控件。按图4-6放置相应的组件,并对各组件的属性进行设置。图4-6用户管理界面窗体其中“申请用户”,“删除用户”按扭事件处理代码与系统主界面上的“散客入住”按扭事件代码类似,这里就不做过多的介绍。申请用户窗口如图4-7放置响应的组件,

49、并对各组件的属性进行设置。主要使用的组件有adoquery。该窗体作用为:用于申请系统用户。图4-7申请用户界面窗体部分代码演示如下:“确定”按扭事件处理代码中会使用adoquery控件,表示密码和用户名极其权限的认证。相关代码如下:/对确定按钮单击事件编程begin if (edit1.text)and(edit2.text)and(combobox1.text)then begin with adoquery1 do /对adoquery1操作 begin close; sql.clear;/清空sql内容 sql.add(select * from glyxx where username=+quotedstr(edit1.text)+); /把glyxx中的值赋予变量username open; end; if adoquery1.recordcount0 then begin sql.add(insert glyxx values(:a,:b,:c); /abc所对应的数据更新进数据库 /输出用户提示信息 if (

温馨提示

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

评论

0/150

提交评论