ADO揭密1

概述

ADO 对象可以在所有支持COM和OLE的平台上使用,如:VB,VC++,VBScrip,Java 等等。包括以下的七个对象:

Connection

Command

Parameter

Recordset

Field

Property

Error

以及四个集合:

Fields

Properties

Parameters

Errors

ADO 的核心是Connection,Recordset和Command 对象。首先用Connection 与服务器建立连接,然后用Command对象执行命令,如查询、更新等。用Recordset 对象来操作和查看查询结果。就是这么简单。

当然,正如其名称一样,Parameters 集合和Parameters对象中的是Command 对象的参数信息。在发生了错误后,在Connection中的Error 集合和Error 对象提供了错误信息。在得到了查询结果后,Field集合和 Field 对象就能通过Recordset 对象使用啦,它们提供了相关字段的信息。

万里长征第一步

一切从连接开始。Connection 对象包含了初始和建立连接的机制,同时也包括了执行查询、使用事务等。在缺省情况下,使用的是MS提供的ODBC驱动(MSDASQL)。要使用其他厂商的东东,需在 Provider 属性中设置。利用ODBC驱动,ADO可以连接到任何支持ODBC的数据库服务:ODBC数据源或外部指定数据源信息(通常是无DSN连接)。

在开始连接以前,先要设置连接字,缺省数据库及连接属性等。在对象中的Open 方法用来建立连接。使用Execute方法可以执行查询。在Connection 对象中也能支持事务处理: 通过BeginTrans,CommitTrans,和RollbackTrans 方法。

下面是使用ODBC 驱动连接到SQL Server 的例子(简单啦!):

Dim Cn As New ADODB.Connection

TimeOut ? 置与网络环境有关

Cn.ConnectionTimeout = 100

DSN 连接

#Cn.Open pubs, sa

到SQL Server的无DSN连接

Cn.Open Driver={SQL Server};Server=Server1;Uid=sa;Pwd=;Database=pubs

Cn.Close

接下来是使用事务处理的例子:

Dim Cn As New ADODB.Connection

Dim rs As New ADODB.Recordset

打开连接

Cn.Open pubs, sa

打开 titles 表

rs.Open SELECT * FROM titles, Cn, adOpenDynamic, adLockPessimistic

Cn.BeginTrans

make changes

Cn.CommitTrans

或者是反悔啦:

cn.RollbackTrans

Cn.Close

建立了连接以后,一切就好说啦。利用Command 对象就可以实现对数据库的全面控制了。

时间: 2024-10-30 22:26:02

ADO揭密1的相关文章

ADO.NET存取数据库

ado|数据|数据库 以下是本CSDN社区的Michael_Jackson(麦克尔★杰克逊)的贴子(删除了C#部分),放这里我想对大家更有用! 可以使用 ADO.NET DataReader 从数据库中检索只读.只进的数据流.因为每次在内存中始终只有一行,所以使用 DataReader 可提高应用程序的性能并减少系统开销. 当创建 Command 对象的实例后,可调用 Command.ExecuteReader 从数据源中检索行,从而创建一个 DataReader,如以下示例所示. [Visua

为 ADO 程序员设计的 ADO.NET (2)

ado|程序|程序员|设计 转换现有代码有许多 ASP 页面使用 ADO 对象来抽取数据.让我们来讨论几种典型的情况,您在不久的将来移植和改编代码时可能会遇上这些情形.如果您有从单个记录集生成报表的 ASP 页面,DataReader 对象将是您最好的伙伴.您浏览 DataReader 对象时,它会将结果输出到页面. String strConn, strCmd; strConn = "DATABASE=MyAgenda;SERVER=localhost;UID=sa;PWD=;";

怎样在PHP中通过ADO调用Access数据库和COM程序

access|ado|程序|数据|数据库 PHP4已经支持Microsoft的COM技术.然而文档中在COM部分却提得很少. 这儿是几个我试过的例子.希望这些给你一些概念.注意的是这些只能运行在32位的Microsoft Windows平台下. 用php激活ADO ADO是Microsoft的数据库对象技术.ADO里面包括连接数据库的对象,从查询语句中返回数据的记录集对象和表现数据元素的字段对象. 许多数据库不直接支持ADO.代之的是很多数据库支持低两级的Microsoft数据库技术:ODBC和

delphi 通过 ado 访问数据库存储过程,如果有插入动作,为什么会执行两遍?

问题描述 delphi 通过 ado 访问数据库存储过程,如果有插入动作,为什么会执行两遍? 20C 如题.这是我反复测试后得出的结论.我实在不理解为什么. 具体测试过程是这样子的:我用ado连接数据库.然后我写了一个简单的存储过程,就是往表里插入数据.然后我用ado调用这个存储过程.然后我就发现,虽然程序里我只调用了一次,但实际上表里的数据却被插入了完全一模一样的两条. 这算是bug还是怎么回事?是不是有什么我不曾注意到的细节没处理好? 存储过程代码如下: create procedure p

使用ADO封装类的数据库程序开发实例(上)

源代码运行效果图如下: 开发实例(上)-vc数据库编程实例ado"> 一.前言 用过ADO的人都知道, 调用ADO要处理很多"麻烦"的事情,如异常处理等,要写很多try - catch块. 有点不甚其烦.我干脆把常用的函数都封装起来,免去老是要写try - catch块的麻烦.做起来虽然没有什么技术含量,但也比较烦琐,所以只完成了一部分,且由于时间及个人水平有限,没有对封装的东西作全面测试,并必定有很多错误,但想到对某些朋友可能有用.所以先"捐"出来

通用权限管理工具,支所有ADO(包括ODBC)支持的数据库,不管用什么编程都行,VC/BCB/VB/PB/Delphi

ado|odbc|编程|数据|数据库 下面是一部分说明: 请细请到这里下载ExeDemo测试版通用权限管理工具的创作动机权限管理是MIS软件中很重要的一环.很多国内较出名的MIS软件厂商都设计了较完善的也具有自己特色的权限管理模块.但对于很多没那么规范的软件商(包括个人或小创作团体),他们经常是接到一单,设计一套权限管理系统,每套都不同:有的则不够重视,随便写上一段,哪里都拷过去用:有的也曾费尽心机,但结果总不能令自己满意.其实仔细想一下,每套软件的权限虽然各不相同,但其实所需实现的功能是相同的

Access 中如何使用 ADO 來压缩或修复 MS Access 文件?

access|ado|压缩 Access 中如何使用 ADO 來压缩或修复 MS Access 文件?专题地址:http://access911.net/index.asp?board=4&recordid=71FAB71E  问题: Access 中如何使用 ADO 來压缩或修复 Microsoft Access 文件?   回答: 以前使用 DAO 时,Microsoft 有提供 CompactDatabase Method 來压缩 Microsoft Access 文件,RepairDat

如何使用ADO來压缩或修复Microsoft Access文件

 以前使用 DAO 時,Microsoft 有提供 CompactDatabase Method 來压缩 Microsoft Access 文件,RepairDatabase Method 來修复损坏的 Microsoft Access 文件,.可是自从 ADO 出來之后,好像忘了提供相对的压缩及修复 Microsoft Access 文件的功能. 現在 Microsoft 发现了这个问题了,也提供了解決方法,不过有版本上的限制!限制說明如下: ActiveX Data Objects (ADO

怎样经由ADO来压缩Microsoft Access数据库

HOWTO: Compacting Microsoft Access Database via ADO --------------------------------------------------------------------------------The information in this article applies to: ActiveX Data Objects (ADO), versions 2.1, 2.5, 2.6 Microsoft OLE DB Provid