06-数据库设计附加3(中间件技术)课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《06-数据库设计附加3(中间件技术)课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 06 数据库 设计 附加 中间件 技术 课件
- 资源描述:
-
1、2022-11-2712022-11-272 本章重要概念(1)中间件的定义和作用(2)ODBC分层的体系结构:应用程序,驱动程序管理器,DB驱动程序,ODBC数据源。(3)ODBC接口:应用程序基本流程,ODBC句柄,ODBC连接,SQL语句的执行。ODBC两套符合性级别。典型的DB应用系统开发工具。(4)JDBC的基本功能,JDBC的结构,JDBC接口。2022-11-273前言u对于那些相对独立的软件供应商而言,经常要为每一个DBMS编写一个版本的应用程序,或者为每个要访问的DBMS编写针对DBMS的代码。这就意味着,大量的资源都耗在了编写和维护DB的访问上,更不用说应用程序了。此时应用
2、程序的评价标准不再是质量,而是它能否在给定的DBMS中访问数据库。u这就需要开放的数据库连接,就是人们需要用一种新的方法来访问不同的数据库。为此,在C/S系统中必须广泛使用中间件技术,以隐藏各种复杂性,屏蔽各种系统之间的差异。ODBC技术和JDBC技术就是这种优秀的中间件技术。2022-11-27410.1.1 中间件的定义u定义10.1 中间件(middleware)是分布式环境中保证操作系统、通信协议、数据库等之间进行对话、互操作的软件系统。2022-11-27510.2.2 中间件的作用u中间件的作用是保证网络中各部件(软件和硬件)之间透明地连接,即隐藏网络部件的异构性,尤其保证不同网络
3、、不同DBMS和某些访问语言的透明性,即下面三个透明性。n 网络透明性:能支持所有类型的网络。n 服务器透明性:不管服务器上的DBMS是何种型号(ORACLE、SYBASE、DB2等),一个好的中间件都能通过标准的SQL语言与不同DBMS上的SQL语言连接起来。n 语言透明性:客户机可用任何开发语言进行发送请求和接受回答,被调用的功能应该像语言那样也是独立的。2022-11-27610.2.1 ODBC概念Open Database Connectibvity2022-11-27710.2.2 ODBC的体系结构(一)2022-11-27810.2.2 ODBC的体系结构(二)u应用程序的主要
4、功能是:调用ODBC函数,递交SQL语句给DBMS,检索出结果,并进行处理。u驱动程序管理器是一个动态连接库(DLL),用于连接各种DBS的DBMS驱动程序(如Oracle、Foxpro、Sybase等驱动程序),管理应用程序和DBMS驱动程序之间的交互作用(通信)。u应用程序通过调用驱动程序所支持的函数来操纵数据库。驱动程序也是一个动态连接库(DLL)。2022-11-27910.2.2 ODBC的体系结构(三)u网络环境下基于单层驱动程序的ODBC结构 2022-11-271010.2.2 ODBC的体系结构(四)u 基于多层驱动程序的ODBC结构2022-11-271110.2.2 OD
5、BC的体系结构(五)u基于网关机制的多层驱动程序的ODBC结构 2022-11-271210.2.2 ODBC的体系结构(六)u用户数据源:用户创建的数据源,称为“用户数据源”。此时只有创建者才能使用,并且只能在所定义的机器上运行。任何用户都不能使用其他用户创建的用户数据源。u系统数据源:所有用户和在Windows NT下以服务方式运行的应用程序均可使用系统数据源。u文件数据源:文件数据源是ODBC 3.0以上版本增加的一种数据源,可用于企业用户,ODBC驱动程序也安装在用户的计算机上。2022-11-271310.2.3 ODBC的特性uODBC是一个调用层的接口 uODBC定义了标准的SQ
6、L语法 uODBC提供一个驱动程序管理器来管理并同时访问多个DBMS系统 2022-11-271410.3.1 ODBC应用程序的基本流程2022-11-271510.3.2 ODBC句柄(一)2022-11-271610.3.2 ODBC句柄(二)henvhdbchstmt环境句柄(定义DB应用环境)连接句柄(定义一个DB连接)语句句柄(定义一个SQL语句)2022-11-271710.3.3 数据源的连接与断开(1)连接数据源的函数连接数据源的函数有三个,但最有效、最通用的是下面一种格式:SQLConnect(hdbc,szDSN,cbDSN,szUID,cbUID,szAuthStr,c
7、bAuthStr)。其中,参数hdbc是一个已经分配的连接分配;参数szDSN和cbDSN分别表示系统所要连接的数据源名称及其长度;参数szUID和cbUID分别表示用户标识符及其长度;参数szAuthStr和cbAuthStr分别表示权限字符串及其长度。(2)断开数据源函数其格式如下:SQLDisconnect(hdbc)其中,参数hdbc是要断开的连接句柄。2022-11-271810.3.4 SQL语句的执行(一)main()HENV henv;*说明henv是一个环境型变量*HDBC hdbc;*说明hdbc是一个连接型变量*HSTMThstmt;*说明hstmt是一个语句句柄变量*R
8、ETCODE retcode;*说明retcode是一个返回变量*SQLAllocEnv(&henv);*分配一个环境句柄*SQLAllocConnect(henv,&hdbc);*分配一个连接句柄*SQLConnect(hdbc,学生,SQL_NTS,NULL,0,NULL,0);*连接数据源*SQLAllocStmt(hdbc,&hstmt);*分配一个语句句柄*retcode=SQLExecDirect(hstmt,SELECT *FROM S,SQL_NTS);*执行语句*结果集处理*SQLDisconnect(hdbc);*断开数据源*SQLFreeStmt(hstmt,SQL_DR
9、OP)*释放一个语句句柄*SQLFreeConnect(hdbc);*释放一个连接句柄*SQLFreeEnv(henv);*当应用完成后,释放环境句柄*2022-11-271910.3.4 SQL语句的执行(二)u有准备地执行SQL语句的函数n(1)SQL语句预备函数其格式如下:SQLPrepare(hstmt,szSqlStr,cbSqlStr)。其中,参数hstmt是一个有效的语句句柄,参数szSqlStr和cbSqlStr分别表示将要执行的SQL语句的字符串及其长度。n(2)SQL语句执行函数其格式如下:SQLExecute(hstmt)。其中参数hstmt是一个有效的语句句柄。2022
展开阅读全文