数据库应用程序设计方法与体系结构cqda.pptx

上传人:muj****520 文档编号:91233650 上传时间:2023-05-24 格式:PPTX 页数:58 大小:690.50KB
返回 下载 相关 举报
数据库应用程序设计方法与体系结构cqda.pptx_第1页
第1页 / 共58页
数据库应用程序设计方法与体系结构cqda.pptx_第2页
第2页 / 共58页
点击查看更多>>
资源描述

《数据库应用程序设计方法与体系结构cqda.pptx》由会员分享,可在线阅读,更多相关《数据库应用程序设计方法与体系结构cqda.pptx(58页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第第9章章 数据库应用程序开发数据库应用程序开发n9.1 数据库应用程序设计方法数据库应用程序设计方法n9.2 数据库应用程序的体系结构数据库应用程序的体系结构n9.3 数据库与应用程序的接口数据库与应用程序的接口n9.4 数据库应用程序开发数据库应用程序开发9.1 数据库应用程序设计方法数据库应用程序设计方法n1.结构特性设计结构特性设计结结构构特特性性的的设设计计是是指指数数据据库库结结构构的的设设计计。其其结结果果是是得得到到一一个个合合理理的的数数据据模模型型,以以反反映映现现实实世世界界中中事事物物间间的的联联系系,它它包包括括各各级级数数据据库库模式(模式、外模式和内模式)的设计。

2、模式(模式、外模式和内模式)的设计。返回首页返回首页n2.行为特性设计行为特性设计行行为为特特性性的的设设计计是是应应用用程程序序设设计计,包包括括功功能能组组织织、流流程程控控制制等等方方面面的的设设计计。其其结结果果是是根根据据行行为为特特性性设设计计出出数数据据库库的的外外模模式式,然然后后用用应应用用程程序序将将数数据据库库的的行行为为和和动动作作(如如数数据据查查询和统计、事物处理及报表处理)表达出来。询和统计、事物处理及报表处理)表达出来。返回本节返回本节9.2 数据库应用程序的体系结构数据库应用程序的体系结构n9.2.1 主机集中型结构主机集中型结构n9.2.2 文件型服务器结构

3、文件型服务器结构n9.2.3 二层客户二层客户/服务器(服务器(C/S)结构结构n9.2.4 三层客户三层客户/服务器结构服务器结构返回首页返回首页9.2.1 主机集中型结构主机集中型结构n主主机机集集中中型型结结构构的的数数据据库库应应用用系系统统一一般般在在一一台台主主机机(大大型型计计算算机机或或小小型型计计算算机机)带带多多台台终终端端的的环环境境下下运运行行,这这种种结结构构在在20世世纪纪6070年年代代比比较较盛盛行行。在在这这种种结结构构的的数数据据库库应应用用程程序序中中,数数据据库库的的存存储储、计计算算、读读取取与与应应用用程程序序的的执执行行,全全部部集集中中在在后后端

4、端的的主主机机上上执执行行。用用户户通通过过前前端端的的终终端端输输入入信信息息传传至至主主机机处处理理,主主机机处处理理完完成成后后将将处处理理的的结结果果返返回回到到前前端端的的终端显示给用户。其结构如图终端显示给用户。其结构如图9-2所示。所示。返回本节返回本节9.2.2 文件型服务器结构文件型服务器结构n到到了了20世世纪纪80年年代代,随随着着苹苹果果计计算算机机、IBM个个人人计计算算机机的的诞诞生生,其其开开放放性性的的结结构构、日日渐渐平平易易近近人人的的价价格格,以以及及愈愈来来愈愈强强的的执执行行性性能能,已已为为一一般般企企业业所所能能负负担担,而而文文件件型型数数据据库

5、库应应用用程程序序也也就就在在此此时时趁趁势势崛崛起起。在在文文件件型型数数据据库库应应用用程程序序中中,数数据据存存放放在在文文件件型型数数据据库库中中,如如早早期期的的dBaseIII,到到今今天天的的Access,就就是是一一些些拥拥有有高高知知名名度度的的文文件件型型数数据据库库。存存放放数数据据库库文文件件的的服服务务器器作作为为文文件件服服务务器器使使用用,应应用用程程序序的的数数据据运运算算和和处处理理逻逻辑辑则则存存放放在前端的工作站中。其体系结构如图在前端的工作站中。其体系结构如图9-3所示。所示。例例如如:在在数数据据库库中中有有一一客客户户表表,共共有有10,000条条客

6、客户户资资料料。现现假假设设想想找找出出客客户户编编号号为为00001的的客客户户信信息息,则则文文件件型型数数据据库库应应用用程程序序处处理理这个请求的方法是:这个请求的方法是:n(1)先先把把这这10,000条条客客户户数数据据从从文文件件服服务务器通过局域网传至前端工作站。器通过局域网传至前端工作站。n(2)前前端端工工作作站站再再从从这这10,000条条客客户户数数据据中查找客户编号为中查找客户编号为00001客户信息。客户信息。n(3)查查询询作作业业结结束束后后,再再把把这这10,000条条记记录返回到文件服务器。录返回到文件服务器。返回本节返回本节9.2.3 二层客户二层客户/服

7、务器(服务器(C/S)结构结构n为了解决费用和性能的矛盾,客户为了解决费用和性能的矛盾,客户/服务器(服务器(C/S)结构就应运而生了。该结构是由一组性能良好且稳定结构就应运而生了。该结构是由一组性能良好且稳定的主机来做数据库服务器,然后连上一群充当客户机的主机来做数据库服务器,然后连上一群充当客户机的工作站而成。在这种结构中,数据库的管理由数据的工作站而成。在这种结构中,数据库的管理由数据库服务器完成,应用程序的数据处理,如数据访问规库服务器完成,应用程序的数据处理,如数据访问规则、业务规则、数据合法性校验等则可能有两种情况:则、业务规则、数据合法性校验等则可能有两种情况:一是全部由客户机来

8、完成,客户机向服务器传送的是一是全部由客户机来完成,客户机向服务器传送的是结构化查询语言结构化查询语言SQL;二是由客户机和服务器共同来二是由客户机和服务器共同来承担,程序处理一部分在客户端以程序代码来实现,承担,程序处理一部分在客户端以程序代码来实现,一部分在服务器端以数据库中的触发器或存储过程实一部分在服务器端以数据库中的触发器或存储过程实现,客户机向服务器传送的是现,客户机向服务器传送的是SQL或要进行处理的参或要进行处理的参数。其系统结构如图数。其系统结构如图9-4所示所示 图图9-4客户客户/服务器结构服务器结构以以同同样样要要从从10,000条条客客户户数数据据记记录录中中,找找出

9、出客客户户编编号号为为00001的的客客户户信信息息,客客户户/服服务务器器结构对这种请求的处理方式是:结构对这种请求的处理方式是:n(1)前前端端客客户户机机向向后后端端数数据据库库服服务务器器发发出出请求。请求。n(2)数数据据库库服服务务器器在在收收到到前前端端客客户户机机的的请请求求后后,自自客客户户表表中中找找出出编编号号为为00001的的客客户户信信息。息。n(3)数数据据库库服服务务器器再再把把查查询询到到的的结结果果传传至至前端客户机。前端客户机。n由由于于这这种种通通信信方方式式简简单单,软软件件开开发发起起来来容容易易,现现在在很很多多的的应应用用软软件件都都是是基基于于这

10、这种种二二层层的的客客户户/服服务务器器模模式式的的,但但这这种种结结构构模模式式的的软软件件存存在以下问题:在以下问题:n伸缩性差。伸缩性差。n性能较差。性能较差。n重用性差。重用性差。n移植性差。移植性差。返回本节返回本节9.2.4 三层客户三层客户/服务器结构服务器结构分分离离的的目目的的是是使使客客户户机机上上的的所所有有处处理理过过程程不不直直接接涉涉及及到到数数据据库库管管理理系系统统,分分离离的的结结果果将将应用程序在逻辑上分为三层:应用程序在逻辑上分为三层:n用用户户服服务务层层:提提供供信信息息浏浏览览和和服服务务定定位位。主主要要是是实实现现用用户户界界面面,并并保保证证用

11、用户户界界面面的的友友好好性、统一性。性、统一性。n业业务务处处理理层层:实实现现数数据据库库的的存存取取及及应应用用程程序序的商业逻辑计算。的商业逻辑计算。n数数据据服服务务层层:实实现现数数据据定定义义、存存储储、备备份份和和检索等功能,主要由数据库系统实现。检索等功能,主要由数据库系统实现。图图9-5三层客户三层客户/服务器结构服务器结构三层结构的系统具有如下特点:三层结构的系统具有如下特点:n(1)业业务务逻逻辑辑放放置置在在中中间间层层可可以以提提高高系系统统的的性性能能,使使中中间间层层业业务务逻逻辑辑处处理理与与数数据据层层的的业业务务数数据据紧紧密密结结合合在在一一起起,而而无

12、无需需考考虑虑客客户户的具体位置。的具体位置。n(2)添添加加新新的的中中间间层层服服务务器器,能能够够满满足足新新增增客客户户机机的的需需求求,大大大大地地提提高高了了系系统统的的可可伸伸缩性。缩性。n(3)将将业业务务逻逻辑辑置置于于中中间间层层,从从而而使使业业务务逻逻辑辑集集中中到到一一处处,便便于于整整个个系系统统的的维维护护和和管管理及代码的复用。理及代码的复用。一一个个基基于于Web的的应应用用程程序序在在逻逻辑辑上上可可能能包包含含如下几层:如下几层:n1层层,由由Web浏浏览览器器实实现现的的一一个个客客户户层层的的界界面。面。n2层层,由由Web服服务务器器实实现现的的一一

13、个个中中间间层层的的任任务分配机制。务分配机制。n3层层,由由一一些些服服务务器器端端脚脚本本实实现现的的中中间间层层服服务。务。n4层,由关系数据库实现的数据层存储机制。层,由关系数据库实现的数据层存储机制。图图9-6互联网应用程序结构互联网应用程序结构返回本节返回本节9.3 数据库与应用程序的接口数据库与应用程序的接口n9.3.1 ODBCn9.3.2 一致数据访问技术一致数据访问技术UDA(Universal Data Access)n9.3.3 JDBC返回首页返回首页9.3.1 ODBCn1ODBC的体系结构的体系结构n2管理数据源管理数据源1ODBC的体系结构的体系结构ODBC的的

14、体体系系结结构构如如图图9-7所所示示,它它由由数数据据库库应应用用程程序序、驱驱动动程程序序管管理理器器、数数据据库库驱驱动动程程序和数据源四部分组成。序和数据源四部分组成。n(1)数据库应用程序。)数据库应用程序。n(2)驱动程序管理器)驱动程序管理器n(3)数据库驱动程序。)数据库驱动程序。n(4)ODBC数据源。数据源。2管理数据源管理数据源n(1)启动)启动ODBC驱动程序管理器。选择驱动程序管理器。选择“我的电脑我的电脑”“控制面板控制面板”“管理工具管理工具”,双击,双击“数据源数据源(ODBC)”图标打开图标打开ODBC数数据源(驱动程序)管理器,如图据源(驱动程序)管理器,如

15、图9-8所示。所示。n(2)选择)选择ODBC驱动程序。切换到驱动程序。切换到“系统系统DSN”标签页,单击标签页,单击“添加添加(D)”按钮,将按钮,将弹出如图弹出如图9-9所示的对话框,选择数据源驱动所示的对话框,选择数据源驱动程序程序SQL Server,单击单击“完成完成”按钮。按钮。n(3)输输入入ODBC数数据据源源名名称称,选选择择数数据据源源的的SQL服服务务器器。在在图图9-10中中,将将数数据据源源命命名名为为LocalServer,服服务务器器选选择择为为local,单单击击“下一步下一步”按钮。按钮。n(4)登录身份配置。在图)登录身份配置。在图9-11中,选择登中,选

16、择登录到录到SQL Server的安全验证信息,选中的安全验证信息,选中“使使用网络登录用网络登录ID的的Windows NT 验证验证”复选框,复选框,客户端配置为默认值。客户端配置为默认值。n(5)选择连接的默认数据库。如图)选择连接的默认数据库。如图9-12所所示,将默认的数据库改为示,将默认的数据库改为Northwind数据库数据库(此数据库是安装(此数据库是安装SQL Server 2000时用于演时用于演示的示范数据库)。示的示范数据库)。n(6)在图)在图9-13中,可以设置中,可以设置SQL Server的的系统消息,如语言、货币、时间、数字格式系统消息,如语言、货币、时间、数

17、字格式以及日志等(一般保持默认设置即可)。以及日志等(一般保持默认设置即可)。图图9-8“系统系统DSN”选项卡选项卡图图9-9 “创建数据源创建数据源”对话框对话框图图9-10输入输入DSN的名称并指定的名称并指定SQL Server所在的服务器所在的服务器图图9-11选择选择SQL Server验证登录的验证登录的ID方式方式图图9-12更改默认的数据库更改默认的数据库图图9-13SQL Server DSN配置对话框配置对话框图图9-14“ODBC Microsoft SQL Server 安装安装”对话框对话框返回本节返回本节9.3.2 一致数据访问技术一致数据访问技术UDA(Univ

18、ersal Data Access)n1OLE DBn2ADO(ActiveX Data Object)n3一致性访问技术的体系结构一致性访问技术的体系结构1OLE DBn继继ODBC之后,微软又推出了之后,微软又推出了OLE DB。简简单地说,单地说,OLE DB是一种技术标准,目的是是一种技术标准,目的是提供一种统一的数据访问接口。这里所说的提供一种统一的数据访问接口。这里所说的“数据数据”,除了标准的关系型数据库中的数,除了标准的关系型数据库中的数据之外,还包括邮件数据、据之外,还包括邮件数据、Web上的文本或上的文本或图形、目录服务,以及主机系统中的图形、目录服务,以及主机系统中的IM

19、S和和VSAM数据。数据。OLE DB标准的核心内容就是要标准的核心内容就是要求为以上这些各种各样的数据存储(求为以上这些各种各样的数据存储(Data Store)都提供一种相同的访问接口,使得数都提供一种相同的访问接口,使得数据的使用者(应用程序)可以使用同样的方据的使用者(应用程序)可以使用同样的方法访问各种数据,而不用考虑数据的具体存法访问各种数据,而不用考虑数据的具体存储地点、格式或类型。储地点、格式或类型。OLE DB将将传传统统的的数数据据库库系系统统划划分分为为多多个个逻逻辑辑组组件件,这这些些组组件件之之间间相相对对独独立立又又相相互互通通信信。这这种种组组件件模模型型中中的各

20、个部分被冠以不同的名称。的各个部分被冠以不同的名称。n数数据据提提供供者者:包包含含数数据据并并将将数数据据输输出出到到其其他他组组件件中中去。提供者大致分为两类:数据提供者和服务提供者。去。提供者大致分为两类:数据提供者和服务提供者。n 业业务务组组件件:利利用用数数据据服服务务提提供供者者、专专门门完完成成某某种种特特定业务信息处理、可以重用的功能组件。定业务信息处理、可以重用的功能组件。n消消费费者者:是是使使用用OLE DB对对存存储储在在数数据据提提供供者者中中的的数据进行控制的应用程序。数据进行控制的应用程序。2ADO(ActiveX Data Object)nADO是是OLE D

21、B的的消消费费者者,与与OLE DB 提提供供者者一一起起协协同同工工作作。它它利利用用低低层层OLE DB为为应应用用程程序序提提供供简简单单高高效效的的数数据据库库访访问问接接口口,ADO封封装装了了OLE DB中中使使用用的的大大量量COM接接口口,对对数数据据库库的的操操作作更更加加方方便便简简单单。ADO实实际际上上是是OLE DB的的应应用用层层接接口口,这这种种结结构构也也为为一一致致的的数数据据访访问问接接口口提提供供了了很很好好的的扩扩展展性性,而而不不再再局局限限于于特特定定的的数数据据源源,因因此此,ADO 可可以以处理各种处理各种OLE DB支持的数据源。支持的数据源。

22、3一致性访问技术的体系结构一致性访问技术的体系结构n一一致致性性访访问问技技术术的的体体系系结结构构即即使使用用ADO和和OLE DB获取数据的体系,结构如图获取数据的体系,结构如图9-16所示。所示。n从从图图中中可可以以看看出出,应应用用程程序序既既可可以以通通过过ADO访访问问数数据据也也可可以以直直接接通通过过OLE DB访访问问数据,而数据,而ADO则通过则通过OLE DB访问底层数据。访问底层数据。返回本节返回本节9.3.3 JDBCn1JDBC 的工作原理的工作原理用用JDBC开开发发Java数数据据库库应应用用程程序序的的工工作作原原理理如图如图9-17所示。所示。n2JDBC

23、 API组成部分组成部分JDBC API共共分分为为两两个个不不同同的的层层:应应用用程程序序层层是是前前端端开开发发人人员员用用来来编编写写应应用用程程序序的的;驱驱动动程程序序层层是是由由数数据据库库厂厂商商或或专专门门的的驱驱动动程程序序生生产产厂厂商商开开发发的的。前前端端开开发发人人员员可可以以不不必必了了解解其其细细节节信信息息,但但是是在在运运行行使使用用应应用用程程序序层层JDBC的的程程序序之之前前,必必须须保保证证巳巳经经正正确确地地安安装装了了这这些些驱驱动动程程序序。具具体体来来说说,JDBC API包包括括5个组成部分,如图个组成部分,如图9-18所示。所示。JDBC

24、 API包括包括5个组成部分个组成部分 n(1)驱动程序管理器()驱动程序管理器(Driver Manager)。)。n(2)驱动程序()驱动程序(Driver)。)。n(3)连接()连接(Connection)。)。n(4)语句()语句(Statement)。)。n(5)结果()结果(ResultSet)。)。返回本节返回本节9.4 数据库应用程序开发数据库应用程序开发n下面就以此表为例,讲解数据库应用程序开发的过程。下面就以此表为例,讲解数据库应用程序开发的过程。字段代码字段名称字段类型长度小数是否为空BOOKID书号char20NOTNULLBOOKNAME书名varchar20NOTN

25、ULLEDITER作者varchar8NULLPRICE价格moneyNULLPUBLISHER出版社varchar20NULLQTY库存数量intNOTNULLn假设在数据库设计的实施阶段,已在假设在数据库设计的实施阶段,已在SQL Server 2000下建立了下建立了“图图书管理系统书管理系统”BOOKSYS数据库,并在此数据库中建立了所有的表。其中数据库,并在此数据库中建立了所有的表。其中BOOK表的结构为:表的结构为:返回首页返回首页1用用VB6访问数据库访问数据库n(1)启启动动VB6,新新建建一一个个标标准准工工程程,如如图图9-19所示。然后单击所示。然后单击“打开打开”按钮。

26、按钮。n(2)在工程中引用)在工程中引用ADO组件。组件。n(3)为工程加载)为工程加载MSFlexGrid控件。控件。n(4)设设计计图图书书查查询询窗窗体体SelBook的的界界面面,添添加加一一个个标标签签页页及及一一个个MSFlexGrid控控件件,如如图图9-22所示。所示。n(5)为为图图书书查查询询窗窗体体添添加加代代码码。在在工工程程资资源源管管理理器器中中,选选中中SelBook窗窗体体,在在菜菜单单栏栏单单击击“视视图图”“代代码码窗窗口口”,进进入入SelBook窗窗体的代码设计状态,输入如下的代码体的代码设计状态,输入如下的代码(略)(略)n(6)在在菜菜单单栏栏上上,

27、单单击击“工工程程”“工工程程属属性性”,将将弹弹出出工工程程属属性性对对话话框框,如如图图9-23所示。在启动对象下拉列表中选择所示。在启动对象下拉列表中选择SelBook。n(7)编编绎绎并并运运行行该该程程序序,运运行行结结果果如如图图9-24所示。所示。图图9-19新建一个标准工程新建一个标准工程图图9-20引用引用ADO组件组件图图9-21加载加载MSHlexGrid控件控件 图图9-22图书查询窗体设计图书查询窗体设计图图9-23工程属性对话框工程属性对话框图图9-24图书查询运行结果(图书查询运行结果(VB数据库应用程序)数据库应用程序)2用用Java访问数据库访问数据库下下面面

28、同同样样以以books表表的的查查询询操操作作为为例例,讲讲解解Java通通过过JDBC API操操作作数数据库的方法和步骤。程序代码(据库的方法和步骤。程序代码(SelBook.java)如下:如下:import java.sql.*;public class SelBook1 public static void main(String args)try /加载数据库驱动程序加载数据库驱动程序 Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);/连接数据库连接数据库Connection conn=DriverManager.getConnection(

29、jdbc:odbc:SelBook,);/创建一个创建一个SQL语句语句Statement stmt=conn.createStatement();/查询查询books表,并将结果集放在结果集对象中表,并将结果集放在结果集对象中ResultSet rs=stmt.executeQuery(select*from book);/下面的语句为输出查询结果下面的语句为输出查询结果 System.out.println(图书查询结果图书查询结果:);System.out.println(t图图书书号号tt图图书书名名ttt作作者者t价价格格t出出版版社社ttt数数量量);while(rs.next()

30、System.out.print(t+rs.getString(1);System.out.print(t+rs.getString(2);System.out.print(t+rs.getString(3);System.out.print(+rs.getDouble(4);System.out.print(t+rs.getString(5);System.out.print(t+rs.getInt(6);System.out.println();conn.close();catch(Exception e)e.printStackTrace();运行上面的运行上面的Java程序,得到图书查

31、询的运行结果(程序,得到图书查询的运行结果(Java数据库应用程序)。数据库应用程序)。图书查询结果:图书查询结果:返回本节返回本节小结小结 n本章首先介绍了开发数据库应用程序的整个过程,本章首先介绍了开发数据库应用程序的整个过程,然后介绍数据库应用程序的然后介绍数据库应用程序的4种体系结构,从最开始种体系结构,从最开始的集中式、到文件服务器方式,再到现在应用范围非的集中式、到文件服务器方式,再到现在应用范围非常广泛的客户常广泛的客户/服务器方式,以及目前日益兴起的基服务器方式,以及目前日益兴起的基于于B/S结构的多层客户结构的多层客户/服务器结构。服务器结构。n数据库应用程序需通过数据访问接

32、口才能访问数据数据库应用程序需通过数据访问接口才能访问数据库,数据访问接口分为专用接口和通用接口两种。专库,数据访问接口分为专用接口和通用接口两种。专用接口是每个数据库管理系统提供的专用数据访问接用接口是每个数据库管理系统提供的专用数据访问接口。通用接口的思想是口。通用接口的思想是Microsoft提出的,通过这些提出的,通过这些通用接口,用户可以访问不同的数据库管理系统,这通用接口,用户可以访问不同的数据库管理系统,这样极大简化和方便了用户对数据库的访问。样极大简化和方便了用户对数据库的访问。n本本章章的的最最后后,通通过过两两个个流流行行数数据据库库应应用用程程序序开开发发工工具具Visual Basic和和Java,介介绍绍了了使使用用架架构构在在OLE DB之之上上的的ADO组组件件和和JDBC提提供供的的JDBC API访访问问数数据据库库的的方方法法,以以使使同同学学们们建建立起开发应用程序的基本思路。立起开发应用程序的基本思路。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 考试试题 > 一级建造

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁