ADO對象的使用

來源:互聯網
上載者:User

     在上一遍文章中我們說了VB中基於ADO的資料庫訪問,接下來讓我們一起來看一下ADO的七個對象,其中我們會重點講述Command和Recordse兩個對象。

我們先通過下面這張圖對ADO的七個對象有一個大概的瞭解:

 

 

 

     的關係線以及我們可以看出,當我們通過Connection對象與資料來源建立串連以後,既可以通過Recordset對象對資料進行操作,也可以通過Command命令對象來執行查詢,然後在傳送給Recordset對象進行資料操作。

下面我們先說Recordset對象:

例如:

        

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物件模型中一些對象的簡單理解,當然還很不全面,會在以後的學習中慢慢完善……

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.