VB說話應用ADO銜接、操作SQLServer數據庫教程。本站提示廣大學習愛好者:(VB說話應用ADO銜接、操作SQLServer數據庫教程)文章只能為提供參考,不一定能成為您想要的結果。以下是VB說話應用ADO銜接、操作SQLServer數據庫教程正文
幾年前學過的VB簡直忘光了,這幾天溫習了下。VB銜接ADO數據庫其實不長短常難。
銜接第一步(要細心看)
關於小白來說,這裡的教程最具體,銜接ADO數據庫第一步,要添加甚麼部件呢?全稱是Microsoft ADO Data Control 6.0 (SP6) (OLEDB) 部件。
在Microsoft ADO Data Control 6.0 (SP6) (OLEDB)部件裡有一個名叫:Adodc數據控件,要將它添加。在Adodc數據控件數據地位中找到ACCES。
控件援用的辦法(值指的是姓名)
For i = 1 To Adodc1.Recordset.RecordCount
If Not Adodc1.Recordset.EOF Then
Combo1.AddItem Adodc1.Recordset.Fields("值").Value
Adodc1.Recordset.Movenext
End If
Next i
該代碼援用的編寫者是ydl890406年夜年夜,在VB群中寫這器械時,讓我借用了,後來我發明有許多毛病,y年夜神修正幾回後的照樣有毛病,爽性重寫了一遍,這就是後來的代碼。時光曩昔的很快,VB群也閉幕了。後來不知為什麼,如今許多的教程都用了這段代碼。
第二部門是AOD的代碼銜接,因為第二部門觸及到Recordset對象和Connection對象,本身學一下,完整可以本身編寫。
作甚Recordset對象和Connection對象,Connection對象是與數據源的銜接,Recordset對象是操作數據。
尋覓Microsoft ADO Data Control 6.0 (SP6) (OLEDB) 部件
VB用ADO銜接SQLServer數據庫
'數據源信息常量 Public Const conn As String = "Provider = SQLOLEDB.1;Password = sa; UserID = sa; Initial Catalog = StudentFiles; Data Source = localhost" Public Const CONNECT_LOOP_MAX = 10 '一次履行connect操作,可以拜訪數據庫的次數 Private IsConnect As Boolean '標志數據庫能否銜接 Private Connect_Num As Integer '標志履行Connect()函數後拜訪數據的次數 Private cnn As ADDODB.Connection '銜接數據庫的Connect對象 Private re As ADDODB.Recordset '保留成果集的Recordset對象 //銜接數據庫 Private Sub Connect() '假如銜接標志為真,則前往。 IF IsConnect = True Then Exit Sub End If Set cnn = New ADODB.Connection '症結new用於創立新對象cnn cnn.ConnectionString = conn cnn.Open '斷定銜接的狀況 If cnn.State <> adStateOpen Then MsgBox"數據庫銜接掉敗" End End If '設置銜接標識,表現曾經銜接到數據庫 IsConnect = True End Sub '斷開與數據庫的銜接 Private Sub DisConnect() Dim rc As Long If IsConnect = False Then Exit Sub End If '封閉銜接 cnn.Close '釋放cnn Set cnn = Nothing IsConnect = False End Sub '應用Connect_Num掌握數據銜接 Public Sub DB_Connect() Connect_Num = Connect_Num + 1 Connect End Sub '應用Connect_Num掌握數據斷開 Public Sub DB_Disconnect() If Connect_Num >= CONNECT_LOOP_MAX Then Connect_Num = 0 Disconnect End If End Sub '強迫封閉api方法拜訪俄的數據庫,計數器復位 Public Sub DBapi_Disconnect() Connect_Num = 0 Disconnect End Sub '履行數據庫操作說話 'byval 就是按參數的值傳遞,再傳遞進程中,參數不會產生變更(也就是將參數值而不是將地址傳遞給進程的方法,這就使進程拜訪發哦變量的正本,進程弗成轉變變量的值); 與之對應的是byref,指按參數的地址傳值,byref可以省略 Public Sub SQLExt(ByVal TmpSQLstmt As String ) Dim cmd As New ADODB.Command '創立Command對象cmd DB_Connect '銜接數據庫 Set cmd.ActiveConnection = cnn '設置cmd的ActiveConnect屬性,指定與其聯系關系的數據庫銜接 cmd.CommandText = TmpSQLstmt '設置要履行的敕令文本 'MsgBox TmpSQLstmt cmd.Execute '履行敕令 Set cmd = Nothing DB_DisConnect '斷開與數據庫的銜接 End Sub '履行數據庫查詢語句 Public Function QueryExt(ByVal TmpSQLstmt As String ) As ADODB.Recordset Dim rst As New ADODB.Recordset '創立Rescordset對象rst DB_Connect '銜接數據庫 Set rst.ActiveConnection = cnn '設置rst的ActiveConnection屬性,指定與其相干的數據庫的銜接 rst.CursorType = adOpenDynamic '設置游標類型 rst.LockType = adLockOptimistic '設置鎖定類型 rst.Open TmpSQLstmt '翻開記載集 Set QueryExt = rst '前往記載集 End Function