- 1、本文档共58页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 数据库应用程序开发 9.1 数据库应用程序设计方法 9.2 数据库应用程序的体系结构 9.3 数据库与应用程序的接口 9.4 数据库应用程序开发 9.1 数据库应用程序设计方法 1. 结构特性设计 结构特性的设计是指数据库结构的设计。其结果是得到一个合理的数据模型,以反映现实世界中事物间的联系,它包括各级数据库模式(模式、外模式和内模式)的设计。 2. 行为特性设计 行为特性的设计是应用程序设计,包括功能组织、流程控制等方面的设计。其结果是根据行为特性设计出数据库的外模式,然后用应用程序将数据库的行为和动作(如数据查询和统计、事物处理及报表处理)表达出来。 9.2 数据库应用程序的体系结构 9.2.1 主机集中型结构 9.2.2 文件型服务器结构 9.2.3 二层客户/服务器(C/S)结构 9.2.4 三层客户/服务器结构 9.2.1 主机集中型结构 主机集中型结构的数据库应用系统一般在一台主机(大型计算机或小型计算机)带多台终端的环境下运行,这种结构在20世纪60~70年代比较盛行。在这种结构的数据库应用程序中,数据库的存储、计算、读取与应用程序的执行,全部集中在后端的主机上执行。用户通过前端的终端输入信息传至主机处理,主机处理完成后将处理的结果返回到前端的终端显示给用户。其结构如图9-2所示。 9.2.2 文件型服务器结构 到了20世纪80年代,随着苹果计算机、IBM个人计算机的诞生,其开放性的结构、日渐平易近人的价格,以及愈来愈强的执行性能,已为一般企业所能负担,而文件型数据库应用程序也就在此时趁势崛起。在文件型数据库应用程序中,数据存放在文件型数据库中,如早期的dBaseIII,到今天的Access,就是一些拥有高知名度的文件型数据库。存放数据库文件的服务器作为文件服务器使用,应用程序的数据运算和处理逻辑则存放在前端的工作站中。其体系结构如图9-3所示。 例如:在数据库中有一客户表,共有10,000条客户资料。现假设想找出客户编号为00001的客户信息,则文件型数据库应用程序处理这个请求的方法是: (1)先把这10,000条客户数据从文件服务器通过局域网传至前端工作站。 (2)前端工作站再从这10,000条客户数据中查找客户编号为00001客户信息。 (3)查询作业结束后,再把这10,000条记录返回到文件服务器。 9.2.3 二层客户/服务器(C/S)结构 为了解决费用和性能的矛盾,客户/服务器(C/S)结构就应运而生了。该结构是由一组性能良好且稳定的主机来做数据库服务器,然后连上一群充当客户机的工作站而成。在这种结构中,数据库的管理由数据库服务器完成,应用程序的数据处理,如数据访问规则、业务规则、数据合法性校验等则可能有两种情况:一是全部由客户机来完成,客户机向服务器传送的是结构化查询语言SQL;二是由客户机和服务器共同来承担,程序处理一部分在客户端以程序代码来实现,一部分在服务器端以数据库中的触发器或存储过程实现,客户机向服务器传送的是SQL或要进行处理的参数。其系统结构如图9-4所示 以同样要从10,000条客户数据记录中,找出客户编号为00001的客户信息,客户/服务器结构对这种请求的处理方式是: (1)前端客户机向后端数据库服务器发出请求。 (2)数据库服务器在收到前端客户机的请求后,自客户表中找出编号为00001的客户信息。 (3)数据库服务器再把查询到的结果传至前端客户机。 由于这种通信方式简单,软件开发起来容易,现在很多的应用软件都是基于这种二层的客户/服务器模式的,但这种结构模式的软件存在以下问题: 伸缩性差。 性能较差。 重用性差。 移植性差。 9.2.4 三层客户/服务器结构 分离的目的是使客户机上的所有处理过程不直接涉及到数据库管理系统,分离的结果将应用程序在逻辑上分为三层: 用户服务层:提供信息浏览和服务定位。主要是实现用户界面,并保证用户界面的友好性、统一性。 业务处理层:实现数据库的存取及应用程序的商业逻辑计算。 数据服务层:实现数据定义、存储、备份和检索等功能,主要由数据库系统实现。 三层结构的系统具有如下特点: (1)业务逻辑放置在中间层可以提高系统的性能,使中间层业务逻辑处理与数据层的业务数据紧密结合在一起,而无需考虑客户的具体位置。 (2)添加新的中间层服务器,能够满足新增客户机的需求,大大地提高了系统的可伸缩性。 (3)将业务逻辑置于中间层,从而使业务逻辑集中到一处,便于整个系统的维护和管理及代码的复用。 一个基于Web的应用程序在逻辑上可能包含如下几层: 1层,由Web浏览器实现的一个客户层的界面。 2层,由Web服务器实现的一个中间层的任务分配机制。 3层,由一些服务器端脚本实现的中间层服务。 4层,由关系数据库实现的数据层存储机制
文档评论(0)