ado

转载 2007年09月24日 21:16:00

ADO中的ADODB允许开发人员进行详细的设置和编程,所以一旦掌握好了ADODC后就应该学习ADODB。ADODB是ADO数据对象的类别名称。它主要包括3个对象,如表6-1所示。

表6-1  ADODB的体系结构

   

   

Connection对象

数据库连接对象,建立和数据库的连接

Recordset对象

记录集对象,按照一定的命令提取出来的数据

Command对象

命令对象,更加灵活执行命令的对象

让我们这样来形象化理解ADODB中3个主要对象的含义。

1.Connection对象

如果我们把访问数据库的VB程序的工作过程比喻为从远处的水塔(服务器上的数据库)中将水(数据)取到自己家(客户机)中的过程。那么,Connection对象的作用就好比是铺设的自来水管道。

Connection对象的作用就是建立客户机和服务器之间的数据通道。

2.Recordset对象

Recordset对象的作用是在客户机的内存中开辟的一块区域,这块区域存储的就是从数据库中按照要求提取出来的数据。

这就好比是在家庭中用来存储水的容器。

数据库包含数据表(Table),表中包含一条一条的记录(Record),每条记录又包含若干字段(Field)。

在ADODB内存中,也设计了和数据库的存储结构一样的内存组织结构,其对应关系如图6-3所示。

!提示:可以理解Recordset对象就是内存中的一张表,这张表的数据是从某个数据库的数据表中提取出来的。

图6-3  数据库逻辑结构和ADODB内存结构的关系

3.Command对象

Command对象是ADODB中用来执行SQL语句或者存储过程的对象。由于Recordset对象的功能已经足够强大,所以实际编程中Command对象用得很少,因为Recordset对象执行SQL语句后的结果是可以只有移动的结果集,而Command对象执行SQL语句的结果集是只读、逐行向下读取的结果集。

!提示:很多情况下,很多程序仅仅使用Connection对象和Recordset对象就可以完成绝大部分数据的操作,Command对象使用较少。

6.1.4  一个典型的ADO编程的实例

下面我们以一个在Visual Basic中使用ADODB来编程访问数据库的实例予以说明,其代码如下。

'定义一个名为conn的connection对象,好比是买了自来水管道

Dim conn As New ADODB.Connection

'定义一个名为rs的Recordset对象,好比是客户机上准备存水的容器

Dim rs As New ADODB.Recordset

'定义字符串类型的连接串

Dim connstr As String

'单击实例化Recordset对象按钮后的执行代码

Private Sub CmdExecute_Click()

 connstr = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=db_student;Data Source = mynetserver"

 conn.ConnectionString = connstr

 '打开服务器上的水闸

 conn.Open connstr

 '将提取出来的数据放在客户机的内存中

 rs.CursorLocation = adUseClient

 '打开水龙头

 rs.Open "T_STUDENT", conn, adOpenKeyset, adLockPessimistic

 '中间的处理过程

 '......

 '关闭水龙头

 rs.Close

'关闭服务器的水闸

 conn.Close

'撤销容器,释放系统资源

 Set rs = Nothing

 '撤销管道,释放系统资源

 Set conn = Nothing

 MsgBox "成功完成Recordset对象的操作流程", , "成功提示"

End Sub

'单击退出按钮后的执行代码

Private Sub CmdExit_Click()

  Unload Me

End Sub

 

用ADO连接SQL Server数据库

这篇文章不是介绍ADO连接数据库的原理的,而是写一下连接的步骤和简便方法。 一、获取连接字符串。 连接数据库时需要用到  _ConnectionPtr  对象的open方法,参数如下: HRES...
  • zhangkaihang
  • zhangkaihang
  • 2012年04月25日 18:23
  • 17715

使用ADO执行存储过程

文章不是我写的,是我搜集的。      在ADO中调用存储过程一直是一个困扰大家的问题。     其实,关于ADO调用存储过程的           方法在很多书中都有讲到,标准的做法无非是按照以下步...
  • hjyhh
  • hjyhh
  • 2008年02月19日 15:54
  • 2832

ADO读取Excel的简单例子

一、简单说明: 工程名字ADO_Excel,类型是console app, 非empty有预编译头stdafx.h。 编译说明: 1.确保C盘下面路径有msado15.dll,没有安装office2...
  • Blues1021
  • Blues1021
  • 2015年02月04日 12:14
  • 6213

VC++ ado事务处理

VC++ ado事务处理
  • byxdaz
  • byxdaz
  • 2017年09月03日 11:27
  • 480

ADO方式连接数据库

ADO方式连接数据库分为如下步骤: 1.ADO对象的导入 在使用ADO技术时需要导入一个ADO动态链接库msado15.dll。该动态库位于系统盘下的"Program Files\Common Fil...
  • hola_f
  • hola_f
  • 2016年08月03日 16:32
  • 3080

利用ADO操作Excel文件

今天花时间研究了一下ADO操作Excel文件的问题,跟大家分享一下:首先利用Excel2003创建了一个名为Demo.xls的文件,内容如下: N...
  • tabby
  • tabby
  • 2007年11月16日 22:50
  • 12456

64位程序,利用ADO连接Oracle数据库

刚好手头项目解决了ADO连接Oracle数据库的问题,z
  • sisyphus_zhou
  • sisyphus_zhou
  • 2014年09月29日 16:14
  • 6768

ADO错误代码

 ADO错误代码下标列出客能从ADO操作得出的标准错误。常量名                                代码                     说明adErrProvide...
  • liuqinyi
  • liuqinyi
  • 2003年02月25日 17:34
  • 1175

Visual C++ ADO数据库编程入门(上)

   ADO 是目前在Windows环境中比较流行的客户端数据库编程技术。ADO是建立在OLE DB底层技术之上的高级编程接口,因而它兼具有强大的数据处理功能(处理各种不同类型的数据源、分布式的数据处...
  • zgl_dm
  • zgl_dm
  • 2008年02月01日 11:04
  • 5481

如何在VB中引用ADO?

在VB6.0中引用ADO: 通过选择“工程”菜单中的“引用...”来为 ADO 对象库添加一个引用,然后在“引用...”对话框中选择 Microsoft ActiveX Data Obj...
  • NCTU_to_prove_safety
  • NCTU_to_prove_safety
  • 2016年11月15日 14:36
  • 423
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ado
举报原因:
原因补充:

(最多只允许输入30个字)