首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

ADO对象的施用

2012-08-01 
ADO对象的使用在上一遍文章中我们说了VB中基于ADO的数据库访问,接下来让我们一起来看一下ADO的七个对象,其

ADO对象的使用

     在上一遍文章中我们说了VB中基于ADO的数据库访问,接下来让我们一起来看一下ADO的七个对象,其中我们会重点讲述Command和Recordse两个对象。

我们先通过下面这张图对ADO的七个对象有一个大概的了解:

 

 ADO对象的施用

 

     从图中的关系线以及我们可以看出,当我们通过Connection对象与数据源建立连接以后,既可以通过Recordset对象对数据进行操作,也可以通过Command命令对象来执行查询,然后在传送给Recordset对象进行数据操作。

下面我们先说Recordset对象:

ADO对象的施用

例如:

        

Dim objCn As New Connection         Dim objRs As New Recordset    Dim strCn As String    Dim strSQL As String           '建立数据库连接        objCn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _                                                "Data Source=" & App.Path \实例1.mdb"        objCn.Open        '执行查询命令,获得用户登录口令        strSQL = "SELECT 口令,身份  FROM 系统用户 WHERE 用户名='" & UserName & "'"                                                                                           Set   objRs.ActiveConnection = objCn        objRs.Open (strSQL)        With objRs               '创建客户端的记录集            .CursorLocation = adUseClient       '指定使用客户端光标            .CursorType = adOpenStatic          '指定使用静态光标            .Open "系统用户", objCn, adOpenStatic, adLockReadOnly        End With        ShowData (lngPage)                   '显示当前记录页数

我们来说一下Command对象:

使用Command对象之前,我们需要执行一下步骤:

   1.通过设置ActiveConnection属性是打开的连接与Command对象关联。

   2.使用CommandText属性定义命令(如SQL,储存过程)的可执行文本。

   3.使用commandType属性指定命令类型。通过Parameter对象和Parameters集合定义参数化查询或存储过程参数。

   4.使用Execute方法执行命令并在适当的时候返回Recordset对象

   5.使用 CreateParameter方法创建一个与命令相关的新的参数对象。

   6.将Command对象传递给Recordset的Source属性以便获得数据。

具体实现:

Private Sub Form_Load()        Dim strcn As String        Set objCn = New Connection        strcn = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;" & "Data Source=" & App.Path & "\实例5.mdb"        objCn.ConnectionString = strcn        objCn.Open                '创建执行参数查询的command 对象 objcmd                Set objCmd = New Command        Set objCmd.ActiveConnection = objCn   '创建连接                With objCmd            .CommandText = "select * from 系统用户 where 用户名 like ?" & "and 身份 like ?"            '定义命令的可执行文本            .CommandType = adCmdText  '指定命令类型        End With        '为command对象创建参数        Dim parm As New Parameter            Set parm = objCmd.CreateParameter("用户名", adVarChar, adParamInput, 10)            objCmd.Parameters.Append parm            Set parm = objCmd.CreateParameter("身份", adVarChar, adParamInput, 10)            objCmd.Parameters.Append parm            et objRs = New Recordset                        objCmd("用户名") = "%" & Trim(txtUserName) & "%"    '%是什么意思???                objCmd("身份") = "%" & txtStatus & "%"                Set objRs = objCmd.Execute() '返回recordset对象            lbl4 = ""End Sub

 

我们还可以在一个Recordset对象实体中使用command对象:

Set cmd.ActiveConnection = cncmd.CommandText = strSqlcmd.CommandType = adCmdTextrs.Open cmd, , adOpenStatic, adLockOptimistic

 

以上是对ADO对象模型中一些对象的简单理解,当然还很不全面,会在以后的学习中慢慢完善……

11楼zhanglianhai5553小时前
加油!
Re: wj80232小时前
回复zhanglianhai555n嘿嘿……一起加油!
10楼StubbornPotatoes3小时前
基础。
Re: wj80233小时前
回复StubbornPotatoesn从基础学起!
9楼liutengteng1303小时前
总结的不错,加油啊。
8楼sunliduan3小时前
很详细!
Re: wj80233小时前
回复sunliduann一起努力啊!
7楼huanjileaimeidan3小时前
加油!
Re: wj80233小时前
回复huanjileaimeidann一起加油!
6楼shan9liang3小时前
高手
Re: wj80233小时前
回复shan9liangn夸我呢?
5楼huanjileaimeidan昨天 20:19
明白了
Re: wj8023昨天 20:48
回复huanjileaimeidann明白啥了?
4楼jiuqiyuliang昨天 17:55
挺好
Re: wj8023昨天 19:42
回复jiuqiyuliangn嘿嘿……大家都挺好!
3楼hejingyuan6昨天 17:52
学习了
2楼cjr15233661143昨天 17:40
真详细啊
1楼aboy123昨天 17:30
继续努力
Re: wj8023昨天 17:31
回复aboy123n恩恩,会的!

热点排行