Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11625589
  • 博文数量: 8065
  • 博客积分: 10002
  • 博客等级: 中将
  • 技术积分: 96708
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-16 17:06
文章分类

全部博文(8065)

文章存档

2008年(8065)

分类: 服务器与存储

2008-04-21 12:57:59

摘要 OLE DB是建立在ODBC成功基础上的一种开放规范,它为访问和操纵不同类型数据提供开放的标准。ADO是OLD DB的一个消费者,它提供了对OLE DB数据源应用级的访问功能。在应用程序中使用OLE DB和ADO,可以高效地调用返回记录集的存储过程。
 

  关键字 OLE DB ADO 存储过程 记录集

  1 前言

  在基于的ADO应用程序的开发过程中,为了提高执行速度和降低网络流量,往往要在应用程序中调用Oracle数据库服务器端的存储过程。有的存储过程需要返回多行的记录集。这种情况下,在应用程序中调用返回记录集的存储过程存在一定的难度。本文介绍如何使用OLE DB和ADO调用返回记录集的Oracle存储过程。

  2 OLE DB和ADO的关系

  2.1 OLE DB简介

  OLE DB建立在ODBC成功基础上的开放的规范,它为访问和操纵不同类型数据提供开放的标准。OLE DB定义了一个COM接口集合,它封装了各种系统服务。这些接口允许创建实现这些服务的软件组件。OLE DB组件包括数据提供者(存储和发布数据)、数据消费者(使用数据)和服务组件(处理和传输数据)。

  OLE DB的设计是以消费者和提供者概念为中心。OLE DB消费者表示传统的客户方,提供者将数据以表格形式传递给消费者。OLE DB的Oracle提供者(OraOLEDB)可使OLE DB消费者高效地访问Oracle数据源。图1给出OLE DB的系统图示。OLE DB数据提供者将数据从数据源传递给消费者。在标准接口的基础上,OLE DB消费者能够访问来自提供者的数据。因为有COM组件,消费者可以用任何支持COM的编程语言访问数据。

  2.2 ADO对象模在ADO对象模型中,Connection、Command和Recordset对象是三个主要的对象。Connection对象表示对远程数据的连接。Connection对象可与Command对象或Recordset对象关联。Command对象定义了对数据源执行的指定命令。Command对象可以用来执行命令和参数化的SQL语句,可以用于SQL语句和返回记录集的SQL查询。Command对象既可以使用一个活动的Connection对象,也可以创建它自己到目标数据源的连接。Command对象包含一个Parameters集合,在该集合中每一个Parameter对象表示Command对象使用的参数。Command对象执行参数化的SQL语句时,每一个Parameter对象表示SQL语句中的一个参数。Recordset对象表示的来自基本表或命令执行结果的记录全集。Recordset对象既可以使用一个活动的Connection对象,也可以创建它自己到目标数据源的连接。Recordset对象允许查询和修改数据。每一个Recordset包含一个Field对象集合,其中,每个Field对象表示Recordset中一个数据列。

阅读(1473) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~