附1: 第1章CS应用程序开发 2021/2/20 Information College. ChangJun
1 2021/2/20 Information College · ChangJun 附1: 第11章 C/S应用程序开发
「本章概要 11.1数据库应用体系架构 11.2中间件技术 11.3典型的数据库应用系统开发工具 11.4 Visual Basic和ADo( Windows应用) 11.5SP程序设计(web应用) 2021/2/20 Information College. ChangJun
2 2021/2/20 Information College · ChangJun [本章概要] 11.1 数据库应用体系架构 11.2 中间件技术 11.3 典型的数据库应用系统开发工具 11.4 Visual Basic和ADO(Windows应用) 11.5 ASP程序设计 (Web应用)
111数据库应用体系架构 客户端 中间层中间件 库 c Browser t Web server Production Systemm Data HTML Pages Server Templates. Production Browser or cs Data Transaction Server Production Components Data Components Production Rich Client/Server Enterprise JavaBeans COM CORBA PB NVOs Data Application Production Components Data 2021/2/20 Information College. ChangJun
3 2021/2/20 Information College · ChangJun 11.1 数据库应用体系架构
1.1.1客户/服务器结构( Client/ Server) 最早起源于局域网中对打印机等外设资源的共享要 求 形成客户机-服务器两层体系结构:客户机提出 请求,服务器对客户机的请求做出回应。 通过对服务功能的分布,实现分工服务。 工作过程: 客户机负责管理用户界面、接收用户数据、处理应用 逻辑、生成数据库服务请求,然后将这些请求发送给服 务器,并且接收服务器返回得结果,最后将这些结果按照 定的格式返回给用户 服务器接收客户机的请求,处理这些请求,返回处理 结果给客户机,这些处理结果包括访问数据库的结果数据 和执行状态。 2021/2/20 Information College. ChangJun
4 2021/2/20 Information College · ChangJun 11.1.1 客户/服务器结构 (Client /Server) 最早起源于局域网中对打印机等外设资源的共享要 求。 形成客户机 --- 服务器两层体系结构:客户机提出 请求,服务器对客户机的请求做出回应。 通过对服务功能的分布,实现分工服务。 工作过程: 客户机负责管理用户界面、接收用户数据、处理应用 逻辑、生成数据库服务请求,然后 将这些请求发送给服 务器,并且接收服务器返回得结果,最后将这些结果按照 一定的格式返回给用户。 服务器接收客户机的请求,处理这些请求,返回处理 结果给客户机,这些处理结果包括访问数据库的结果数据 和执行状态
11.1.2浏览器/服务器结构( Browse/ Server) 起源于 Internet的应用。 浏览器 Internet服务器-数据库 服务器三层体系结构。 业务的表达通过简单的浏览器来实现。 工作过程: 用户通过浏览器提交表单,把信息传递给 Internet服务器, Internet服务器根据用户的请 求,分析出要求数据库服务器进行的查询,交给 数据库服务器去执行,数据库服务器把查询结果 反馈给 Internet服务器,再由 Internet服务器用 标准的HTML语言反馈给浏览器。 2021/2/20 Information College. ChangJun
5 2021/2/20 Information College · ChangJun 11.1.2 浏览器/服务器结构 (Browse/Server) 起源于Internet的应用。 浏览器 ---- Internet服务器 ----数据库 服务器三层体系结构。 业务的表达通过简单的浏览器来实现。 工作过程: 用户通过浏览器提交表单,把信息传递给 Internet服务器,Internet服务器根据用户的请 求,分析出要求数据库服务器进行的查询,交给 数据库服务器去执行,数据库服务器把查询结果 反馈给Internet服务器,再由Internet服务器用 标准的HTML语言反馈给浏览器
11.2中间件技术 11.2.1概述 对于那些相对独立的软件供应商而言,经常要为每 个DBMS编写一个版本的应用程序,或者为每个要访问 的DBMS编写针对DBMS的代码。这就意味着,大量的资源 都耗在了编写和维护DB的访问上,更不用说应用程序了。 此时应用程序的评价标准不再是质量,而是它能否在给 定的DBMS中访问数据库。 这就需要开放的数据库连接,就是人们需要用一种 新的方法来访问不同的数据库。为此,在C/S结构中必须 广泛使用中间件技术,以隐藏各种复杂性,屏蔽各种系 统之间的差异。ODBC、 OLEDB和JDBC就是这种优秀的中间 件技术。 2021/2/20 Information College. ChangJun
6 2021/2/20 Information College · ChangJun 11.2 中间件技术 11.2.1 概述 对于那些相对独立的软件供应商而言,经常要为每 一个DBMS编写一个版本的应用程序,或者为每个要访问 的DBMS编写针对DBMS的代码。这就意味着,大量的资源 都耗在了编写和维护DB的访问上,更不用说应用程序了。 此时应用程序的评价标准不再是质量,而是它能否在给 定的DBMS中访问数据库。 这就需要开放的数据库连接,就是人们需要用一种 新的方法来访问不同的数据库。为此,在C/S结构中必须 广泛使用中间件技术,以隐藏各种复杂性,屏蔽各种系 统之间的差异。ODBC、OLEDB和JDBC就是这种优秀的中间 件技术
中间件( middleware)是分布式环境中保证操作系 统、通信协议、数据库等之间进行对话、互操作的软件 系统。 中间件的作用是保证网络中各部件(软件和硬件) 之间透明地连接,即隐藏网络部件的异构性,尤其保证 不同网络、不同DBMS和某些访问语言的透明性,即下面 三个透明性 、网络透明性:能支持所有类型的网络 2、服务器透明性:不管服务器上的DBMS是何种型号 ( ORACLE、 SYBASE、DB2等),一个好的中间件都能通过 标准的SQL语言与不同DBMS上的SQL语言连接起来。 3、语言透明性:客户机可用任何开发语言进行发送请 求和接受回答,被调用的功能应该像语言那样也是独立 的 2021/2/20 Information College. ChangJun
7 2021/2/20 Information College · ChangJun 中间件(middleware)是分布式环境中保证操作系 统、通信协议、数据库等之间进行对话、互操作的软件 系统。 中间件的作用是保证网络中各部件(软件和硬件) 之间透明地连接,即隐藏网络部件的异构性,尤其保证 不同网络、不同DBMS和某些访问语言的透明性,即下面 三个透明性。 1、网络透明性:能支持所有类型的网络 。 2、服务器透明性:不管服务器上的DBMS是何种型号 (ORACLE、SYBASE、DB2等),一个好的中间件都能通过 标准的SQL语言与不同DBMS上的SQL语言连接起来。 3、语言透明性:客户机可用任何开发语言进行发送请 求和接受回答,被调用的功能应该像语言那样也是独立 的
11.2.10DBC的体系结构 1989年, Microsoft、 Lotus、 Sybase和DEC四个公司 联合提出一个称为SQL互连( SQL Connectivity)的访问 接口规范,定义了一批访问数据库的函数。 1990年,数据库厂商集团 SAG SQL互连作为其调用级 接口(CLI)规范基础。 1992年, Microsof公司发布了一个扩充CL的软件开 发工具集,称开放数据库互连(ODBC),得到许多数据库 和软件开发商的支持。 1995年,IS0正式批准SQL/CLI为SQL-92的一个附件, 称SQL-92/CL。 1999年,SQL/CLI成为SQL:1999标准的一部分,且 为多数RDBS产品所支持。 2021/2/20 Information College. ChangJun
8 2021/2/20 Information College · ChangJun 11.2.1 ODBC的体系结构 1989年,Microsoft、Lotus、Sybase和DEC四个公司 联合提出一个称为SQL互连(SQL Connectivity)的访问 接口规范,定义了一批访问数据库的函数。 1990年,数据库厂商集团SAG SQL互连作为其调用级 接口(CLI)规范基础。 1992年,Microsoft公司发布了一个扩充CLI的软件开 发工具集,称开放数据库互连(ODBC),得到许多数据库 和软件开发商的支持。 1995年,ISO正式批准SQL/CLI为SQL-92的一个附件, 称SQL-92/CLI。 1999年, SQL/CLI成为SQL:1999标准的一部分,且 为多数RDBMS产品所支持
采用API的应用编程 应用程序 应用程序 应用程序 公共接口API 网络软件 Foxpro SQL Server Sybase Oracle DB 2 2021/2/20 Information College. ChangJun
9 2021/2/20 Information College · ChangJun 采用API的应用编程
ODBC的分层体系结构 ODBC数据库应用程序 驱动程序管理器 SQL Server Oracle Foxpro Syba DB2 驱动程序 驱动程序 驱动程序 驱动程序 驱动程序 SOLServer Oracle Foxpro Sybase 数据源 数据源 数据源 数据源 数据源 DB DB DB DB DB 2021/2/20 Information College. ChangJun
10 2021/2/20 Information College · ChangJun ODBC数据库应用程序 SQL Server 驱动程序 Oracle 驱动程序 DB2 驱动程序 Sybase 驱动程序 Foxpro 驱动程序 驱动程序管理器 SQL Server 数据源 Oracle 数据源 Foxpro 数据源 Sybase 数据源 DB2 数据源 DB DB DB DB DB ODBC的分层体系结构