最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

VB語(yǔ)言使用ADO連接、操作SQLServer數(shù)據(jù)庫(kù)教程

 更新時(shí)間:2014年08月18日 09:43:17   投稿:junjie  
這篇文章主要介紹了VB語(yǔ)言使用ADO連接、操作SQLServer數(shù)據(jù)庫(kù)教程,本文講解詳細(xì)、代碼中有大量注釋,是非常好的一篇教程,需要的朋友可以參考下

幾年前學(xué)過(guò)的VB幾乎忘光了,這幾天復(fù)習(xí)了下。VB連接ADO數(shù)據(jù)庫(kù)并不是非常難。

連接第一步(要仔細(xì)看)

對(duì)于小白來(lái)講,這里的教程最詳細(xì),連接ADO數(shù)據(jù)庫(kù)第一步,要添加什么部件呢?全稱(chēng)是Microsoft ADO Data Control 6.0 (SP6) (OLEDB) 部件。

在Microsoft ADO Data Control 6.0 (SP6) (OLEDB)部件里有一個(gè)名叫:Adodc數(shù)據(jù)控件,要將它添加。在Adodc數(shù)據(jù)控件數(shù)據(jù)位置中找到ACCES。

控件引用的方法(值指的是姓名)

復(fù)制代碼 代碼如下:

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


該代碼引用的編寫(xiě)者是ydl890406大大,在VB群中寫(xiě)這東西時(shí),讓我借用了,后來(lái)我發(fā)現(xiàn)有很多錯(cuò)誤,y大神修改幾次后的還是有錯(cuò)誤,干脆重寫(xiě)了一遍,這就是后來(lái)的代碼。時(shí)間過(guò)去的很快,VB群也解散了。后來(lái)不知為何,現(xiàn)在很多的教程都用了這段代碼。

第二部分是AOD的代碼連接,由于第二部分涉及到Recordset對(duì)象和Connection對(duì)象,自己學(xué)一下,完全可以自己編寫(xiě)。

何為Recordset對(duì)象和Connection對(duì)象,Connection對(duì)象是與數(shù)據(jù)源的連接,Recordset對(duì)象是操作數(shù)據(jù)。

尋找Microsoft ADO Data Control 6.0 (SP6) (OLEDB) 部件

VB用ADO連接SQLServer數(shù)據(jù)庫(kù)

 '數(shù)據(jù)源信息常量
 Public Const conn As String = "Provider = SQLOLEDB.1;Password = sa; UserID = sa; Initial Catalog = StudentFiles; Data Source = localhost"

 Public Const CONNECT_LOOP_MAX = 10 '一次執(zhí)行connect操作,可以訪問(wèn)數(shù)據(jù)庫(kù)的次數(shù)

 Private IsConnect As Boolean '標(biāo)記數(shù)據(jù)庫(kù)是否連接

 Private Connect_Num As Integer '標(biāo)記執(zhí)行Connect()函數(shù)后訪問(wèn)數(shù)據(jù)的次數(shù)

 Private cnn As ADDODB.Connection '連接數(shù)據(jù)庫(kù)的Connect對(duì)象
 
 Private re As ADDODB.Recordset '保存結(jié)果集的Recordset對(duì)象

//連接數(shù)據(jù)庫(kù)
 Private Sub Connect()
 '如果連接標(biāo)記為真,則返回。
 IF IsConnect = True Then 
   Exit Sub
 End If

 Set cnn = New ADODB.Connection '關(guān)鍵new用于創(chuàng)建新對(duì)象cnn
 
 cnn.ConnectionString = conn
 
 cnn.Open
 '判斷連接的狀態(tài)
 If cnn.State <> adStateOpen Then
   MsgBox"數(shù)據(jù)庫(kù)連接失敗"
   End
 End If

 '設(shè)置連接標(biāo)識(shí),表示已經(jīng)連接到數(shù)據(jù)庫(kù)
 IsConnect = True
End Sub


'斷開(kāi)與數(shù)據(jù)庫(kù)的連接
Private Sub DisConnect()
 Dim rc As Long

 If IsConnect = False Then
   Exit Sub
 End If
 '關(guān)閉連接
 cnn.Close
 '釋放cnn
 Set cnn = Nothing
 IsConnect = False
End Sub

'使用Connect_Num控制數(shù)據(jù)連接
Public Sub DB_Connect()
  Connect_Num = Connect_Num + 1
  Connect
End Sub

'使用Connect_Num控制數(shù)據(jù)斷開(kāi)
Public Sub DB_Disconnect()
If Connect_Num >= CONNECT_LOOP_MAX Then
  Connect_Num = 0
  Disconnect
 End If
 End Sub

'強(qiáng)制關(guān)閉api方式訪問(wèn)俄的數(shù)據(jù)庫(kù),計(jì)數(shù)器復(fù)位
Public Sub DBapi_Disconnect()
  Connect_Num = 0
  Disconnect
End Sub

'執(zhí)行數(shù)據(jù)庫(kù)操作語(yǔ)言
'byval 就是按參數(shù)的值傳遞,再傳遞過(guò)程中,參數(shù)不會(huì)發(fā)生變化(也就是將參數(shù)值而不是將地址傳遞給過(guò)程的方式,這就使過(guò)程訪問(wèn)發(fā)哦變量的副本,過(guò)程不可改變變量的值);
與之對(duì)應(yīng)的是byref,指按參數(shù)的地址傳值,byref可以省略
Public Sub SQLExt(ByVal TmpSQLstmt As String )  

  Dim cmd As New ADODB.Command '創(chuàng)建Command對(duì)象cmd
  
  DB_Connect '連接數(shù)據(jù)庫(kù)
  
  Set cmd.ActiveConnection = cnn '設(shè)置cmd的ActiveConnect屬性,指定與其關(guān)聯(lián)的數(shù)據(jù)庫(kù)連接

  cmd.CommandText = TmpSQLstmt '設(shè)置要執(zhí)行的命令文本

  'MsgBox TmpSQLstmt

  cmd.Execute '執(zhí)行命令

  Set cmd = Nothing

  DB_DisConnect '斷開(kāi)與數(shù)據(jù)庫(kù)的連接

End Sub

'執(zhí)行數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)句
Public Function QueryExt(ByVal TmpSQLstmt As String ) As ADODB.Recordset
  
  Dim rst As New ADODB.Recordset '創(chuàng)建Rescordset對(duì)象rst

  DB_Connect '連接數(shù)據(jù)庫(kù)

  Set rst.ActiveConnection = cnn '設(shè)置rst的ActiveConnection屬性,指定與其相關(guān)的數(shù)據(jù)庫(kù)的連接

  rst.CursorType = adOpenDynamic '設(shè)置游標(biāo)類(lèi)型

  rst.LockType = adLockOptimistic '設(shè)置鎖定類(lèi)型

  rst.Open TmpSQLstmt '打開(kāi)記錄集

  Set QueryExt = rst '返回記錄集

  End Function

相關(guān)文章

最新評(píng)論

蒙阴县| 靖西县| 缙云县| 浦东新区| 女性| 财经| 达州市| 澄江县| 新源县| 仲巴县| 安仁县| 宜城市| 芮城县| 都江堰市| 徐闻县| 淮北市| 东丰县| 中卫市| 海南省| 罗城| 岳池县| 固阳县| 甘泉县| 南召县| 资讯 | 绥化市| 岳池县| 吉木乃县| 贵港市| 杭锦后旗| 杂多县| 扎赉特旗| 大田县| 大足县| 土默特左旗| 绥棱县| 弥勒县| 阿坝| 五家渠市| 临西县| 哈尔滨市|