




已阅读5页,还剩45页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
专科生毕业设计(论文)摘 要随着我国经济体制改革的不断深入和国民经济的高速发展,旅游业发展迅速导致第三产业发展的速度也得到提升。当今社会,经济腾飞,各种新兴产业应运而生,第三产业迅速发展。处在这样的时期,越来越多的服务行业需要变更传统的管理方式。其中,对企业的管理采用软件管理的方式的趋势越来越明显。随着计算机的飞速发展,各行各业都在用计算机进行着管理工作,特别在近期旅游兴盛对于酒店管理这一关系到每个酒店宾馆发展以及旅客自身利益的大问题,各大酒店宾馆企业都正在逐步走向数字化的发展道路上。我开发的酒店管理系统即是为适应现实社会中旅游人员增加,酒店宾馆管理要求越来越高的需求,拟开发一个以Windows 9X/2000作为用户操作平台的酒店管理系统软件。本毕业课题是为适应现实生活中,第三产业迅猛发展,作为第三产业主力军的酒店宾馆企业开发的一个数据库系统。主要实现酒店客房管理与相关报表模块。本课题的开发环境是Windows视窗系统Win2000,VB是由微软公司开发的,VB源自于BASIC程序语言,让使用者可以快速的建立一个应用程序。在本模块中主要实现的功能可分为三大功能,第一个功能是实现床位的分配和回收,第二个功能是查询,第三个功能是系统重置。用户界面介绍,性能描述,运行模式的选择,任务的划分,软件的总体结构,模块的外部设计,开发工具的简单介绍,数据存取技术的介绍,在本模块的具体实现中,即编码阶段,除了综合面向对象的开发技术外,SQL语句是贯穿整个程序的,无论是查询、删除、插入、修改用SQL语句实现都是比较直观的。关键词: BASIC程序语言;数据库;VB;旅馆AbstractWith the constant deepening of Chinas economic reform and rapid development of the national economy, tourism has developed rapidly lead to the development of tertiary industry has been upgrading the speed. Todays society, economic growth and emerging industries came into being, the tertiary industry has developed rapidly. In this period, more and more service industries need to change the traditional approach to management. Among them, the management of enterprise software management approach with the trend of more and more apparent. With the rapid development of computers, businesses are using computers with management, in particular tourism has been thriving in the near future for the hotel management that each and every hotel and hostel development and self-interest of big problem passengers, major hotels hotel enterprises is gradually moving towards the development of the digital road. Hotel management system I developed is to adapt to real increase in tourism officials, hotel management requires increasingly high demand, the proposed development of a Windows 9X/2000 platform as the users hotel management system software. The school issue is to adapt to real life, the rapid development of tertiary industry, as the third major force in the hotel industry, hotel companies to develop a database system. Main achieved hotel room management and related reporting module. The development environment is the subject of Windows Windows system Win2000, VB is developed by Microsoft, VB from the BASIC programming language, so users can quickly build an application. Implementation of this module the main features can be divided into three functions, the first function is to check the third function is the system reset. User interface description, performance description, operation mode selection, the division of tasks, the softwares overall structure, the modules external design, development tools, a brief introduction, Introduction, in the concrete implementation of this module, the coding phase , in addition to the development of integrated object-oriented technology outside, SQL statement is run through the whole process, whether the query, delete, insert, modify, use the SQL statement is relatively straightforward to achieve.Keywords: BASIC programming language; database; VB; Hotel目 录第1章 绪 论11.1 选题背景11.2 课题来源及意义21.3 系统基本达到的目标及结论21.4 开发工具和数据库的选择3第2章 可行性分析42.1 可行性研究42.1.1 技术可行性42.1.2 经济可行性42.1.3 操作可行性42.2 软、硬件配置及结构52.2.1 硬件配置52.2.2 软件配置52.3 使用工具介绍52.4 后台数据库的介绍62.5 系统结构62.5.1 C/S模式简介62.5.2 C/S模式的优点7第3章 系统需求分析83.1 需求分析的任务83.2 系统数据流图的创建83.2.1 功能分析103.3 数据字典的创建103.4 系统结构设计123.5 系统E-R图设计12第4章 系统逻辑结构设计174.1 系统逻辑结构设计主要任务174.2 E-R图转换成关系模型174.3 数据模型的优化184.4 数据库的物理设计的内容和方法194.5 数据库表的创建20第5章 系统应用程序设计235.1 ADO的使用方法235.1.1 ADO对象简介235.1.2 ADO对象之间的关系245.1.3 ADO对象访问技术255.2 系统功能模块设计265.2.1 系统功能设计图265.2.2 东方旅馆管理系统模块设计275.3 系统的详细设计30第6章 调 试366.1 连接测试366.2 数据库调试38第7章 结 论40参考文献41致 谢42V第1章 绪 论1.1 选题背景计算机系统参与到酒店的日常营业管理之中,更加充分的发挥了其工作优势,为酒店管理提供了更加充足的手段,主要有如下体现: 实时性数据,为酒店的管理人员提供最及时的经营数据,包括当前的房间状况、入住及预订客人分析,客房房态、住客情况等报表均采用动态统计功能,可随时按需要打印,彻底消除人工制表的辛苦及由于报表时间差异而造成的不准确性为在激烈竞争环境中的酒店提供更加精确、及时的数据供决策层参考等。因此有必要开发一套酒店管理系统。旅馆业信息管理系统是公安业务最前沿的信息系统,对于加强治安管理、预防和侦破流动人口犯罪案件,具有非常重要的实战作用。随着社会经济的发展和城市化进程的加快,加之铁路、公路、航空交通的不断完善,全国范围的人、财、物流动逐渐趋于频繁化,跨区域和流窜犯罪数量也随之逐年上升。在当前的新形势下,如何通过旅馆业信息管理系统加强对流动高危人群的管理,最大程度地发挥打防流动人口犯罪的实战作用是当前公安机关亟待研究解决的一大课题。首先,旅馆业信息管理系统在公安工作中的特殊作用。建立一套设计科学的旅馆业信息管理系统,可以让我们的民警每天上班打开电脑就能“足不出所”的了解到辖区外来人员的实时动态信息,并通过旅馆业信息管理系统能够直接查询出所管辖的旅馆入住了多少人员,以及这其中是否有来自犯罪高危地、是否有前科劣迹、是否是上网逃犯等等信息,基层所队的防控工作也由此变被动排查为主动掌控,民警就可以精确出击,对入住的高危人员进行有针对性地管控,真正实现“敌住我扰、敌动我打”的有利局面,让犯罪分子来了之后住不安、逃不掉。在服务治安部门管理工作的同时,也为刑侦部门的犯罪信息研判和网上作战提供了可靠的信息抓手。例如,针对发生的系列盗窃保险柜案件或街头诈骗案件,民警就可以通过将案发时间入住的人员信息进行梳理,找出案发时间和特定入住者之间的关系,从登记信息入手对其展开针对性的调查,也可在高危人群人口入住旅馆时实现系统预警,及时进行布控,确保将其一网打尽。其次,如何通过旅馆业信息管理系统管控高危人群。第一点是对犯罪输出地人群的管控,第二点是对前科劣迹人员的管理,第三点是对在逃人员信息的管理,第四点是对持假证入住人员的管理。然后,建立健全旅馆业信息管理系统要注意解决好的问题。1.2 课题来源及意义随着信息技术的迅速发展以及计算机在社会中的广泛运用,我国国民经济信息化建设进程的步伐也在加快,各政府机构和企业都利用计算机进行开发和管理工作,以更有效地提高工作效率,对于酒店管理这一关系到服务行业发展以及旅客自身利益的问题,再也不是一个简单的操作过程。旅馆是一种提供家庭式管理服务的公寓,集住宅、酒店、会所多功能于一体,具有“自用和“投资两大功效,但其本质仍然是公寓。旅馆是一种既吸收了星级酒店较好的服务功能和管理模式,又吸收了住宅、写字楼的某些特点;既可居住,又可办公的综合性很强的物业。旅馆与普通住宅楼比较起来,其结构和设计均有所不同。酒店公寓需要配套齐全、高档,能为住房提供星级酒店式的生活环境和物业管理。旅馆,意为“旅游式的服务,公寓式的管理”。选择酒店式公寓最大的特点就是自由方便,而且价格相对较低,随时可以得到酒店式的各种服务,如洗衣服、更换被单等。一般酒店式公寓的公共设施均类似酒店,所以居住者的身份和气派也可彰显。旅馆寓吸引懒人和忙人。酒店式服务公寓,最早始于1994年欧洲,意为“酒店式的服务,公寓式的管理”,是当时旅游区内租给游客,供其临时休息的物业,由专门管理公司进行统一上门管理,既有酒店的性质又相当于个人的“临时住宅”。这些物业就成了旅馆的雏形。1.3 系统基本达到的目标及结论本系统中共分3个大块:第一块是;实现床位的分配和回收。第二块是;查询。第三块是;系统重置。实现床位的分配和回收。旅客住店时,把旅客信息及其住房要求输入计算机系统中,快速获取符合旅客需求的房间等级、空房和空床信息,为旅客提供满意的服务。旅客退房时,把所退房间的等级、空房和空床信息录入计算机系统中,自动完成退房工作。查询。对整个旅馆床位信息的查询:根据对旅馆实际情况的调查,主要实现如下查询:全店可分配男床位总数及女床位总数的查询、各个等级可分配男床总数和女床总数的查询、各个等级的空房信息和房间利用情况的查询。还有对旅客信息的查询,包括现在正入住或者已经入住的旅客信息的查询。另外,查询中,系统还实现了旅客信息的实时修改功能。系统重置。可对系统数据进行清空,实现该系统的再次利用。当今社会,经济腾飞,各种新兴产业应运而生,第三产业迅速发展。处在这样的时期,越来越多的服务行业需要变更传统的管理方式。各行各业都在用计算机进行着管理工作,特别在近期旅游兴盛对于旅店管理这一关系到每个酒店宾馆发展以及旅客自身利益的大问题。旅店管理系统即是为适应现实社会中旅游人员增加,旅店管理要求越来越高的需求。1.4 开发工具和数据库的选择本系统前台是用VB,后台是用access。Access 是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS,即Relational Database Management System),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。Access能够存取 Access/Jet、Microsoft SQL Server、Oracle(甲骨文软件公司),或者任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的进阶用户则能使用它来开发简单的应用软件。虽然它支援部份面向对象(OO)技术,但是未能成为一种完整的面向对象开发工具。第2章 可行性分析2.1 可行性研究2.1.1 技术可行性本系统主要利用VB和access2003实现东方旅馆管理系统,通过床位分配模块、床位回收模块、按等级等级模块、按姓名或日期查询模块、系统重置模块实现对床位管理和查询。2.1.2 经济可行性在进行系统的初步调查后,已对该系统的投资进行了估算,对开发中所须人员及其它费用进行了估算。由于此系统将实现数据共享,真正为中国的第三产业事业提供方便快捷的条件,它的研制应用必将取得显著的社会效益和经济效益。随着旅游产业的不断发展,以及现代人民的生活水平不断提高,旅馆管理的相关系统提供单位,都已具有微机设备,有专门的组织机构和管理业务人员来专门为此改进系统,操作人员的计算机操作水平也已相当高,既有系统管理员及系统维护人员。因此,此系统完成后在目前的第三产业投入运行是完全可能的。由于本系统的在当初被设计的时候就考虑到资金的问题所以本系统不是那么大,在这个方面我们考虑到系统的维护的资金和系统未获得工作人员的工资的问题。2.1.3 操作可行性本系统主要利用VB和access2003实现对整个旅馆的床位回收和旅客的登记情况,在熟练操作以上系统的情况下,把模块进行连接,实现对床位的分配,对旅客信息的查询,达到普通用户能够查询旅客信息和分配床位。参加该系统的软件开发人员已有多年的软件开发经验,掌握多种软件开发技术及数据库设计技术,因此,在现有的技术条件下完成该系统的开发工作是很有把握的。2.2 软、硬件配置及结构2.2.1 硬件配置并不要求很高的系统配置,能运行windows系统和office办公软件的计算机系统即可。建议配置:计算机主频500MHZ以上,内存64M以上,硬盘10G以上,显卡缓存16M以上。2.2.2 软件配置操作系统最好是Microsoft Windows 2000 Server/professional 或者以上版本,另外需装Microsoft Office 2000 access数据库。2.3 使用工具介绍本系统是基于VB和access2003环境开发的。Vb是Visual Basic的简称,是由美国微软公司于1991年开发的一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发 Windows 环境下的各类应用程序。它简单易学、效率高,且功能强大可以与 Windows 专业开发工具SDK相媲美。在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的广泛应用程序接口(API)函数,动态链接库(DLL)、对象的链接与嵌入(OLE)、开放式数据连接(ODBC)等技术,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。Access是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS,即Relational Database Management System),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。Access能够存取 Access/Jet、Microsoft SQL Server、Oracle(甲骨文软件公司),或者任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的进阶用户则能使用它来开发简单的应用软件。虽然它支援部份面向对象技术,但是未能成为一种完整的面向对象开发工具。2.4 后台数据库的介绍Access是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS,即Relational Database Management System),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。Access能够存取 Access/Jet、Microsoft SQL Server、Oracle(甲骨文软件公司),或者任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的进阶用户则能使用它来开发简单的应用软件。虽然它支援部份面向对象(OO)技术,但是未能成为一种完整的面向对象开发工具。2.5 系统结构2.5.1 C/S模式简介C/S(Client/Server,客户机/服务器)模式又称C/S结构,是20世纪80年代末逐步成长起来的一种模式,是软件系统体系结构的一种。C/S结构的关键在于功能的分布,一些功能放在前端机(即客户机)上执行,另一些功能放在后端机上执行。功能的分布在于减少计算机系统的各种瓶颈问题。C/S模式简单地讲就是基于企业内部网络的应用系统。与B/S(Browser/Server,浏览器/服务器)模式相比,模式的应用系统最大的好处是不依赖企业外网环境,即无论企业是否能够上网。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如ORACLE、SYBASE、InfORMix或 SQL Server。客户端需要安装专用的客户端软件。传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件支持。由于没能提供用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件, 加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用。而且代价高, 效率低。如我院使用的上海超兰公司“案件统计”管理软件就是典型的C/S体系结构管理软件。2.5.2 C/S模式的优点C/S 模式的优点:第一个优点是由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。第二个优点是操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求。第三个优点是C/S结构的管理信息系统具有较强的事务处理能力,能实现复杂的业务流程。C/S 模式的缺点: 第一个缺点是需要专门的客户端安装程序,分布功能弱,针对点多面广且不具备网络条件的用户群体,不能够实现快速部署安装和配置。第二个缺点是兼容性差,对于不同的开发工具,具有较大的局限性。若采用不同工具,需要重新改写程序。第三个缺点是开发成本较高,需要具有一定专业水准的技术人员才能完成。第3章 系统需求分析3.1 需求分析的任务开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转化到相应的形式功能规约(需求规格说明)的过程。需求分析虽处于软件开发过程的初期阶段,但它对于整个软件开发过程以及软件产品质量是至关重要的。随着软件系统复杂性的提高及规模的扩大,需求分析在软件开发中的所处的地位愈加突出,从而也愈加困难。3.2 系统数据流图的创建数据流图(Data Function Diagram):又名数据功能图表,简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。数据流程图中有以下几种主要元素: 数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。 数据源(终点):代表系统之外的实体,可以是人、物或其他软件系统。 对数据的加工(处理):加工是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出。 数据存储:表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等。旅馆管理系统数据流图,如图3.1所示。图3.1 系统数据流图3.2.1 功能分析第一个模块是床位管理模块。包括床位分配,床位回收两个小模块,其作用是实现床位的分配和回收。旅客住店时,把旅客信息及其住房要求输入计算机系统中,快速获取符合旅客需求的房间等级、空房和空床信息,为旅客提供满意的服务。旅客退房时,把所退房间的等级、空房和空床信息录入计算机系统中,自动完成退房工作。第二个模块是查询模块。包括按等级查询,按日期或姓名查询两个小模块,其作用是对整个旅馆床位信息的查询:根据对旅馆实际情况的调查,主要实现如下查询:全店可分配男床位总数及女床位总数的查询、各个等级可分配男床总数和女床总数的查询、各个等级的空房信息和房间利用情况的查询;对入住旅客个人信息及入住信息的查询;对曾经入住旅客历史信息的查询。另外,查询中,系统需要实现旅客入住信息的实时修改功能。第三个模块是系统模块。系统重置模块,其作用是可对系统数据进行清空,实现该系统的再次利用。3.3 数据字典的创建数据字典是关于数据信息的集合,也就是对数据流图中包含的所有元素定义的集合。任何字典最主要的用途都是供人查阅不了解的条目的解释,数据字典的作用也正是在软件分析和设计过程中给人提供关于数据的描述信息。数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用。只有数据流图和对数据流图精确的定义放在一起,才能共同构成系统的规格说明。 由于元素太多我们只对其中主要的元素定义说明。数据字典的主要用途是作为分子阶段的主要工具。在数据字典中建立一组严密一致的定义很有助于改进分析员和客户之间的通信,因此将消除很多可能的误解。数据字典包含的每个数据元素的控制信息是很有价值的。因为列出了使用一个给定的数据元素所有程序,很容易估计改变一个元素将产生的影响,并且能对所有受影响的程序或模块做出相应改变。由于暂时还没有自动的数据字典处理程序,我们采用卡片形式书写数据字典,每张卡片上保存描述一个数据元素的信息。这种做法较好的实现了上述要求,特别是更新修改起来很方便,能够单独处理每个数据元素的信息。每张卡片上包含的信息有:名字,别名,描述,定义,位置。以下是数据流图中主要元素的数据字典卡片。名字:旅客信息表别名:描述:用来记录旅客的个人信息。定义:旅客信息表=旅客号+旅客姓名+年龄+性别+到达日期位置:系统数据库名字:旅客床位表别名:描述:给旅客提供住宿的地方。定义:旅客床位表=入住旅客号+房间号+旅客入住床位号位置:系统数据库名称:房间表别名:描述:给旅客提供生活的空间。定义:房间表=房间号+房间等级+房间剩余床位数+房间类型位置:系统数据库名称:房间等级表别名:描述:记录各个房间的等级以及名称。定义:房间等级表=房间等级+房间等级名称+该等级房间所剩床位位置:系统数据库名称:旅客登记表别名:描述:记录每个来本旅馆入住旅客的个人信息。定义:旅客登记表=旅客号+旅客姓名+年龄+房间类型+入住日期+房间号+旅客入住床位号。位置:系统数据库3.4 系统结构设计这个阶段要具体进行计算机过程与手工过程相关的各种详细的系统设计,除选择合适的软、硬件和网络设备,进行代码的输入输出;文件、数据库设计外,还包括进行程序模块处理过程的设计等。结构化设计方法的基本思想是以系统的逻辑功能设计和数据流关系为基础,根据数据流图和数据字典,借助一套标准的设计准则和图表工具,通过自上而下和自下而上的反复,逐层把系统划分为多个大小适当、功能明确,具有相对独立性,并容易实现的子模块,从而把复杂系统的设计转变为多个简单模块的设计。由于组成系统的子模块间彼此功能明确,系统能够对大部分模块进行单独维护和修改,而基本不会影响系统中的其他模块。因此,合理进行模块分解、定义和数据协调是结构化设计的主要内容。系统整体设计的难点也转移到了各子模块的功能耦合方面。系统的模块化形式在前面的内容中已经有了较详细的描述,根据以客人为核心的运营模式,我们可以将这些模块界定为三个大层次,前台、后台和管理层。不同层次的模块上有不同的侧重,但提高并行处理和数据共享的程度,防止网络和功能冲突是模块划分时要特殊考虑的问题。 3.5 系统E-R图设计E-R图也即实体-联系图(Entity Relationship Diagram),提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。E-R方法是“实体-联系方法”(Entity-Relationship Approach)的简称。它是描述现实世界概念结构模型的有效方法。构成E-R图的基本要素是实体型、属性和联系,其表示方法为:实体型(Entity):具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体;在E-R图中用矩形表示,矩形框内写明实体名;比如学生张三丰、学生李寻欢都是实体。如果是弱实体的话,在矩形外面再套实线矩形。属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。如果是多值属性的话,再椭圆形外面再套实线椭圆。如果是派生属性则用虚线椭圆表示。联系(Relationship):联系也称关系,信息世界中反映实体内部或实体之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。在E-R图中用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1 : 1,1 : n或m : n)。 本系统的总体E-R图,如图3.2所示。图3.2总系统E-R图图3.3 房间号实体E-R图图3.4 旅客号码实体E-R图图3.5 房间等级实体E-R图图3.6 入住旅客号实体E-R图图3.7 旅客号码实体E-R图第4章 系统逻辑结构设计4.1 系统逻辑结构设计主要任务逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用的DBMS产品所支持的数据模型相符合的逻辑结构。逻辑结构设计的过程如图5-25所示。attach1283/attach由于各种DBMS产品一般都有许多限制,提供不同的环境与工具,因此,逻辑设计分为如下几步:第一步是将概念模型向一般关系、网状和层次模型转化;第二步是将得到的一般关系、网状和层次模型向特定的DBMS产品所支持的数据模型转化;第三步是依据应用的需求和具体的DBMS的特征进行调整和完善。某些早期设计的应用系统中还在使用网状或层次数据模型,而新设计的数据库应用系统都普遍采用支持关系数据模型的RDBMS,所以这里只介绍E-R图像关系数据模型的转换原则与方法。4.2 E-R图转换成关系模型E-R转换为关系模型一般遵循的原则:一个实体型转换为一个关系模型.实体的属性就是关系的属性,实体的码就是关系的码。对于实体型图的联系则有以下不同的情况:1一个1:1联系可以转换为一个独立的关系模型,也可以与任意一端对应的关系模型式。合并,如果转换为一个独立的关系模式,则与该联系相联的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。如果与某一个实体对应关系模式合并,则需要在该关系模式的属性中加如入一个关系模式的码和联系本身的属性。2一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换模式为一个独立的关系模式,则与该联系相连的各个实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。3一个m:n联系转换为一个关系模式,与该联系相连的各实体的码以及联系本身的属性均转换关系的属性,各实体的码组成关系的码或关系码的一个部分。43个或3个以上的实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。5具有相同码的关系模式可合并。4.3 数据模型的优化数据库逻辑设计的结果不是唯一的。为了进一步提高数据库应用系统的性能,还应该根据应用需要适当地修改、调整数据模型的结构,这就是数据模型的优化。第一步是确定数据依赖。在6.2.3“数据字典”一节中己讲到用数据依赖分析和表示数据项之间的联系,写出每个数据项之间的数据依赖。如果需求分析阶段没有来得及做,可以现在补做,即按需求分析阶段所得到的语义,分别写出每个关系模式内部各属性之间的数据依赖以及不同关系模式属性之间的数据依赖。第二步是对于各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系。第三步是按照数据依赖的理论对关系模式逐一进行分析,考察是否存在部分函数依赖、传递函数依赖、多值依赖等,确定各关系模式分别属于第几范式。第四步是按照需求分析阶段得到的处理要求,分析这些模式对于这样的应用环境是否合适,确定是否要对某些模式进行合并或分解。必须注意的是,并不是规范化程度越高的关系就越优。例如,当查询经常涉及到两个或多个夫系模式的属性时,系统经常进行连接运算。连接运算的代价是相当高的,可以说关系模型低效的主要原因就是连接运算引起的。这时可以考虑将这几个关系合并为一个关系。因此在这种情况下,第二范式甚至第一范式也许是合适的。又如,非BCNF的关系模式虽然从理论上分析会存在不同程度的更新异常或冗余,但如果在实际应用中对此关系模式只是查询,并不执行更新操作,则就不会产生实际影响。所以对于一个具体应用来说,到底规范化到什么程度,需要权衡响应时间和潜在问题两者的利弊决定。第五步是对关系模式进行必要的分解,提高数据操作的效率和存储空间的利用率。常用的两种分解方法果水平分解和垂直分解。水平分解是把(基本)关系的元组分为若干子集合,定义每个子集合为一个子关系,以提高系统的效率。根据“8020原则”,一个大关系中,经常被使用的数据只是关系的一部分,约20,可以把经常使用的数据分解出来,形成一个子关系。如果关系R上具有n个事务,而且多数事务存取的数据不相交,则R可分解为少于或等于n个子关系,使每个事务存取的数据对应一个关系。垂直分解是把关系模式R的属性分解为若干于集合,形成若干子关系模式。垂直分解的原则是,经常在一起使用的属性从R中分解出来形成一个子关系模式。垂直分解可以提高某些事务的效率,但也可能使另一些事务不得不执行连接操作,从而降低了效率。因此是否进行垂直分解取决于分解后R上的所有事务的总效率是否得到了提高。垂直分解需要确保无损连接性和保持函数依赖,即保证分解后的关系具有无损连接性和保持函数依赖性。这可以用第五章中的模式分解算法对需要分解的关系模式进行分解和检查。规范化理论为数据库设计人员判断关系模式的优劣提供了理论标准,可用来预测模式可能出现的问题,使数据库设计工作有了严格的理论基础。4.4 数据库的物理设计的内容和方法数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于给定的计算机系统和DBMS。为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计。数据库的物理设计通常分为两步:第一步是确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;第二步是对物理结构进行评价,评价的内容是系统的时间和空间效率。如果评价结果满足原设计要求,则可进入到物理实施阶段,否则,就需要重新设计或修改物理结构,有时甚至要返回逻辑设计阶段修改数据模型。关系数据库的逻辑设计过程:由于DBMS目前一般采用关系数据模型,因此数据库的逻辑设计,就是将概念设计中所得到的E-R图转换成等价的关系模式。概念设计是对客观世界的描述,与实现无关;而逻辑设计依赖于实现的基础DBMS。从数据库逻辑设计导出的数据库结构是DBMS能接受的数据库定义,这种结构有时也称为逻辑数据库结构。概念设计是对客观世界的描述,与实现无关;而逻辑设计依赖于实现的基础DBMS。4.5 数据库表的创建入住旅客个人信息表主要是记录入住旅客的个人信息(旅客号,旅客姓名,旅客年龄,旅客性别以及旅客的到达日期),如表4.1所示。表4.1入住旅客个人信息表字段名字段类型大小是否允许空值说明GnoText4否旅客入住后,自动为其分配一旅客号,作为住关键字以便检索。NameText8否旅客姓名AgeInteger否年龄TypeText1否1男2女DatText10否旅客到达日期床位信息表(房间等级,房间等级的名称,改等级房间所含的床位号),如表4.2所示。表4.2 床位数信息表字段名字段类型大小是否允许空值说明ClassText1否房间等级ClassNameText10否房间等级的名称:1普通单间2普通双人间3普通三人间4普通四人间5标准间6豪华间7总统套房CnumInteger否该等级房间所含床位数。住房信息表(入住旅客号,房间号,入住床位号),如表4.3所示。表4.3 住房信息表字段名字段类型大小是否允许空值说明GnoText4否入住旅客号RnoText3否房间号NumInteger1否旅客入住床位号旅客信息表(旅客号,旅客姓名,旅客年龄,旅客入住的房间类型,旅客入住日期,旅客入住房间号,旅客入住房间号,旅客退房日期),如表4.4所示。表4.4 旅客信息表字段名字段类型大小是否允许空值字段说明GnoText4否旅客号NameText8否旅客姓名AgeInteger否年龄TypeText1否房间类型Chk_in_datText10否入住日期RnoText3否房间号NumText1否旅客入住床位号Chk_out_datText10是退店时,录入退房日期。房间等级信息表(房间号,房间等级的种类,房间剩余床位数,房间居住类别),如表4.5所示。表4.5房间等级信息表字段名字段类型大小是否允许空值说明RnoText3否房间号ClassText1否房间等级有如下几种:1普通单间2普通双人间3普通三人间4普通四人间5标准间6豪华间7总统套房BsurplusInteger否房间剩余床位数TypeText1否0空房间1男房2女房第5章 系统应用程序设计5.1 ADO的使用方法5.1.1 ADO对象简介微软公司的ADO (ActiveX Data Objects) 是一个用于存取数据源的COM组件。它提供了编程语言和统一数据访问方式OLE DB的一个中间层。允许开发人员编写访问数据的代码而不用关心数据库是如何实现的,而只用关心到数据库的连接。访问数据库的时候,关于SQL的知识不是必要的,但是特定数据库支持的SQL命令仍可以通过ADO中的命令对象来执行。ADO被设计来继承微软早期的数据访问对象层,包括RDO (Remote Data Objects) 和DAO(Data Access Objects)。ADO包含一些顶层的对象:连接,代表到数据库的连接。记录集,代表数据库记录的一个集合。命令,代表一个SQL命令。记录,代表数据的一个集合。流,代表数据的顺序集合。错误,代表数据库访问中产生的意外。字段,代表一个数据库字段。参数,代表一个SQL参数。属性,保存对象的信息。ADO组件的使用需要利用支持COM的高级语言,例如ASP中的VBScript或者Visual Basic,甚至Delphi,微软的竞争对手Borland的一个产品,现在也支持使用ADO来访问数据库。在新的编程框架.NET Framework中, 微软也提供了一个面向Internet的版本的ADO,称为ADO.NET。其对象模型和传统ADO差别很大。 ADO是一种面向对象的编程接口,微软介绍说,与其同IBM和Oracle提倡的那样,创建一个统一数据库,不如提供一个能够访问不同数据库的统一接口,这样会更加实用一些。为实现这一目标,微软在数据库和微软的OLE DB中提供了一种“桥”程序,这种程序能够提供对数据库的连接。 开发人员在使用ADO时,其实就是在使用OLE DB,不过OLE DB更加接近底层。ADO的一项属性远程数据服务,支持“数据仓库”ActiveX 组件以及高效的客户端缓存。作为ActiveX的一部分,ADO也是COM组件的一部分。ADO是由早期的微软数据接口远程数据对象RDO演化而来的。RDO同微软的ODBC一同连接关系数据库,不过不能连接非关系数据库。5.1.2 ADO对象之间的关系ADO的七个对象:Connection对象用于创建ASP脚本和指定数据库连接。Command对象负责对数据库提供请求,也就是传递指定的SQL命令。使用该对象可以查询数据库并返回recordset对象中的记录,以便执行大量操作或修改数据库结构。Parameter对象负责传递Command对象所需要的SQL命令参数。RecordSet对象数据的获取、结果的检验以及数据库的更新。可以依照查询条件获取或显示所要的数据列与记录。Recordset对象会保留每项查询返回的记录所在的位置,以便逐项察看结果。Field表示指定RecordSe
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 丁辛醇装置操作工设备调试考核试卷及答案
- 贵金属轧延轧制工艺参数优化工艺考核试卷及答案
- 电子真空器件真空镀膜控制工艺考核试卷及答案
- 电线电缆检验员技能比武考核试卷及答案
- 【课件】正数和负数+课件2025-2026学年人教版(2024)七年级数学上册+
- 眼镜技术考试题库及答案
- 服务心理学(第四版)课件 项目八 任务一 了解消费习俗
- 林业专业试题及答案
- 农业专业试题及答案
- 枣树专业试题及答案
- 2025年税收和注册税务师知识竞赛题目及答案
- 2025年工会经审财务知识竞赛培训试题考试题库(含答案)
- Starter Unit2 Keep TidySectionB(1a-1d)公开课一等奖创新教学设计人教版(2024)七年级英语上册
- 焊接质量检测记录规范模板
- 2025年辽宁省交通建设投资集团招聘(104人)备考练习试题及答案解析
- 七年级上册数学《相交线与平行线》100题练习(含答案)
- 西藏文化考试题目及答案
- (9月10日)师者如光虽微致远-2025年教师节主题班会课件-2025-2026学年高中主题班会课件
- 2025秋外研新版三起点小学英语四年级上册教学计划
- 2025-2026学年人教版(2024)初中数学八年级上册教学计划及进度表
- 2025秋部编版二年级上册语文教学计划+教学进度表
评论
0/150
提交评论