?? dbfunc.bas
字號(hào):
Attribute VB_Name = "DbFunc"
'== 標(biāo)記數(shù)據(jù)庫是否連接 ==
Private IsConnect As Boolean
'== 標(biāo)記執(zhí)行Connect()函數(shù)后,訪問數(shù)據(jù)庫的次數(shù) ==
Private Connect_Num As Integer
Private cnn As ADODB.Connection '連接數(shù)據(jù)庫的Connection對(duì)象
Private rs As ADODB.Recordset '保存結(jié)果集的Recordset對(duì)象
'連接數(shù)據(jù)庫
Private Sub Connect()
'如果連接標(biāo)記為真,則返回。否則會(huì)出錯(cuò)
If IsConnect = True Then
Exit Sub
End If
'關(guān)鍵New用于創(chuàng)建新對(duì)象cnn
Set cnn = New ADODB.Connection
'設(shè)置連接字符串ConnectionString屬性
cnn.ConnectionString = Conn
'打開到數(shù)據(jù)庫的連接
cnn.Open
'判斷連接的狀態(tài)
If cnn.State <> adStateOpen Then
'如果連接不成功,則顯示提示信息,退出程序
MsgBox "數(shù)據(jù)庫連接失敗"
End
End If
'設(shè)置連接標(biāo)記,表示已經(jīng)連接到數(shù)據(jù)庫
IsConnect = True
End Sub
'斷開與數(shù)據(jù)庫的連接
Private Sub Disconnect()
Dim Rc As Long
'如果連接標(biāo)記為假,標(biāo)明已經(jīng)斷開連接,則直接返回
If IsConnect = False Then
Exit Sub
End If
'關(guān)閉連接
cnn.Close
'釋放cnn
Set cnn = Nothing
'設(shè)置連接標(biāo)記,表示已經(jīng)斷開與數(shù)據(jù)庫的連接
IsConnect = False
End Sub
'使用Connect_Num控制數(shù)據(jù)庫連接
Public Sub DB_Connect()
Connect_Num = Connect_Num + 1
Connect
End Sub
Public Sub DB_Disconnect()
If Connect_Num >= CONNECT_LOOP_MAX Then
Connect_Num = 0
Disconnect
End If
End Sub
'強(qiáng)制關(guān)閉api方式訪問的數(shù)據(jù)庫,計(jì)數(shù)器復(fù)位
Public Sub DBapi_Disconnect()
Connect_Num = 0
Disconnect
End Sub
'執(zhí)行數(shù)據(jù)庫操作語句
Public Sub SQLExt(ByVal TmpSQLstmt As String)
'創(chuàng)建Command對(duì)象cmd
Dim cmd As New ADODB.Command
'連接到數(shù)據(jù)庫
DB_Connect
'設(shè)置cmd的ActiveConnection屬性,指定與其關(guān)聯(lián)的數(shù)據(jù)庫連接
Set cmd.ActiveConnection = cnn
'設(shè)置要執(zhí)行的命令文本
cmd.CommandText = TmpSQLstmt
' MsgBox TmpSQLstmt
'執(zhí)行命令
cmd.Execute
'清空cmd對(duì)象
Set cmd = Nothing
'斷開與數(shù)據(jù)庫的連接
DB_Disconnect
End Sub
'執(zhí)行數(shù)據(jù)庫查詢語句
Public Function QueryExt(ByVal TmpSQLstmt As String) As ADODB.Recordset
'創(chuàng)建Recordset對(duì)象rst
Dim rst As New ADODB.Recordset
'連接到數(shù)據(jù)庫
DB_Connect
'設(shè)置rst的ActiveConnection屬性,指定與其關(guān)聯(lián)的數(shù)據(jù)庫連接
Set rst.ActiveConnection = cnn
'設(shè)置游標(biāo)類型
rst.CursorType = adOpenDynamic
'設(shè)置鎖定類型
rst.LockType = adLockOptimistic
'打開記錄集
rst.Open TmpSQLstmt
'返回記錄集
Set QueryExt = rst
End Function
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -