VB 6.0中的数据连接模块
生活随笔
收集整理的這篇文章主要介紹了
VB 6.0中的数据连接模块
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
??1'==?標(biāo)記數(shù)據(jù)庫(kù)是否連接?==
??2Private?IsConnect?As?Boolean
??3'==?標(biāo)記執(zhí)行Connect()函數(shù)后,訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的次數(shù)?==
??4Private?Connect_Num?As?Integer
??5Private?cnn?As?ADODB.Connection???'連接數(shù)據(jù)庫(kù)的Connection對(duì)象
??6Private?rs?As?ADODB.Recordset?????'保存結(jié)果集的Recordset對(duì)象
??7
??8'連接數(shù)據(jù)庫(kù)
??9Private?Sub?Connect()Sub?Connect()
?10??'如果連接標(biāo)記為真,則返回。否則會(huì)出錯(cuò)
?11??If?IsConnect?=?True?Then
?12????Exit?Sub
?13??End?If
?14??
?15??'關(guān)鍵New用于創(chuàng)建新對(duì)象cnn
?16??Set?cnn?=?New?ADODB.Connection
?17??'設(shè)置連接字符串ConnectionString屬性
?18??cnn.ConnectionString?=?connstr
?19??'打開(kāi)到數(shù)據(jù)庫(kù)的連接
?20??cnn.Open
?21??'判斷連接的狀態(tài)
?22??If?cnn.State?<>?adStateOpen?Then
?23????'如果連接不成功,則顯示提示信息,退出程序
?24????MsgBox?"數(shù)據(jù)庫(kù)連接失敗"
?25????End
?26??End?If
?27??
?28??'設(shè)置連接標(biāo)記,表示已經(jīng)連接到數(shù)據(jù)庫(kù)
?29??IsConnect?=?True
?30End?Sub
?31
?32'斷開(kāi)與數(shù)據(jù)庫(kù)的連接
?33Private?Sub?Disconnect()Sub?Disconnect()
?34??Dim?Rc?As?Long
?35??'如果連接標(biāo)記為假,標(biāo)明已經(jīng)斷開(kāi)連接,則直接返回
?36??If?IsConnect?=?False?Then
?37????Exit?Sub
?38??
?39????
?40??End?If
?41??'關(guān)閉連接
?42??cnn.Close
?43??'釋放cnn
?44??Set?cnn?=?Nothing
?45??'設(shè)置連接標(biāo)記,表示已經(jīng)斷開(kāi)與數(shù)據(jù)庫(kù)的連接
?46??IsConnect?=?False
?47End?Sub
?48
?49'使用Connect_Num控制數(shù)據(jù)庫(kù)連接
?50Public?Sub?DB_Connect()Sub?DB_Connect()
?51??Connect_Num?=?Connect_Num?+?1
?52??Connect
?53End?Sub
?54Public?Sub?DB_Disconnect()Sub?DB_Disconnect()
?55??If?Connect_Num?>=?CONNECT_LOOP_MAX?Then
?56????Connect_Num?=?0
?57????Disconnect
?58??End?If
?59End?Sub
?60'強(qiáng)制關(guān)閉api方式訪(fǎng)問(wèn)的數(shù)據(jù)庫(kù),計(jì)數(shù)器復(fù)位
?61Public?Sub?DBapi_Disconnect()Sub?DBapi_Disconnect()
?62??Connect_Num?=?0
?63??Disconnect
?64End?Sub
?65
?66'執(zhí)行數(shù)據(jù)庫(kù)操作語(yǔ)句
?67Public?Sub?SQLExt()Sub?SQLExt(ByVal?TmpSQLstmt?As?String)
?68??'創(chuàng)建Command對(duì)象cmd
?69??Dim?cmd?As?New?ADODB.Command
?70??
?71??'連接到數(shù)據(jù)庫(kù)
?72??DB_Connect
?73??'設(shè)置cmd的ActiveConnection屬性,指定與其關(guān)聯(lián)的數(shù)據(jù)庫(kù)連接
?74??Set?cmd.ActiveConnection?=?cnn
?75??'設(shè)置要執(zhí)行的命令文本
?76??cmd.CommandText?=?TmpSQLstmt
?77'?MsgBox?TmpSQLstmt
?78??'執(zhí)行命令
?79???cmd.Execute
?80??'清空cmd對(duì)象
?81??Set?cmd?=?Nothing
?82??'斷開(kāi)與數(shù)據(jù)庫(kù)的連接
?83??DB_Disconnect
?84End?Sub
?85
?86'執(zhí)行數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)句
?87Public?Function?QueryExt()Function?QueryExt(ByVal?TmpSQLstmt?As?String)?As?ADODB.Recordset
?88??'創(chuàng)建Recordset對(duì)象rst
?89??Dim?rst?As?New?ADODB.Recordset
?90??
?91??'連接到數(shù)據(jù)庫(kù)
?92??DB_Connect
?93??'設(shè)置rst的ActiveConnection屬性,指定與其關(guān)聯(lián)的數(shù)據(jù)庫(kù)連接
?94??Set?rst.ActiveConnection?=?cnn
?95??'設(shè)置游標(biāo)類(lèi)型
?96??rst.CursorType?=?adOpenDynamic
?97??'設(shè)置鎖定類(lèi)型
?98??rst.LockType?=?adLockOptimistic
?99??'打開(kāi)記錄集
100??rst.Open?TmpSQLstmt
101??'返回記錄集
102??Set?QueryExt?=?rst
103End?Function
104
??2Private?IsConnect?As?Boolean
??3'==?標(biāo)記執(zhí)行Connect()函數(shù)后,訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的次數(shù)?==
??4Private?Connect_Num?As?Integer
??5Private?cnn?As?ADODB.Connection???'連接數(shù)據(jù)庫(kù)的Connection對(duì)象
??6Private?rs?As?ADODB.Recordset?????'保存結(jié)果集的Recordset對(duì)象
??7
??8'連接數(shù)據(jù)庫(kù)
??9Private?Sub?Connect()Sub?Connect()
?10??'如果連接標(biāo)記為真,則返回。否則會(huì)出錯(cuò)
?11??If?IsConnect?=?True?Then
?12????Exit?Sub
?13??End?If
?14??
?15??'關(guān)鍵New用于創(chuàng)建新對(duì)象cnn
?16??Set?cnn?=?New?ADODB.Connection
?17??'設(shè)置連接字符串ConnectionString屬性
?18??cnn.ConnectionString?=?connstr
?19??'打開(kāi)到數(shù)據(jù)庫(kù)的連接
?20??cnn.Open
?21??'判斷連接的狀態(tài)
?22??If?cnn.State?<>?adStateOpen?Then
?23????'如果連接不成功,則顯示提示信息,退出程序
?24????MsgBox?"數(shù)據(jù)庫(kù)連接失敗"
?25????End
?26??End?If
?27??
?28??'設(shè)置連接標(biāo)記,表示已經(jīng)連接到數(shù)據(jù)庫(kù)
?29??IsConnect?=?True
?30End?Sub
?31
?32'斷開(kāi)與數(shù)據(jù)庫(kù)的連接
?33Private?Sub?Disconnect()Sub?Disconnect()
?34??Dim?Rc?As?Long
?35??'如果連接標(biāo)記為假,標(biāo)明已經(jīng)斷開(kāi)連接,則直接返回
?36??If?IsConnect?=?False?Then
?37????Exit?Sub
?38??
?39????
?40??End?If
?41??'關(guān)閉連接
?42??cnn.Close
?43??'釋放cnn
?44??Set?cnn?=?Nothing
?45??'設(shè)置連接標(biāo)記,表示已經(jīng)斷開(kāi)與數(shù)據(jù)庫(kù)的連接
?46??IsConnect?=?False
?47End?Sub
?48
?49'使用Connect_Num控制數(shù)據(jù)庫(kù)連接
?50Public?Sub?DB_Connect()Sub?DB_Connect()
?51??Connect_Num?=?Connect_Num?+?1
?52??Connect
?53End?Sub
?54Public?Sub?DB_Disconnect()Sub?DB_Disconnect()
?55??If?Connect_Num?>=?CONNECT_LOOP_MAX?Then
?56????Connect_Num?=?0
?57????Disconnect
?58??End?If
?59End?Sub
?60'強(qiáng)制關(guān)閉api方式訪(fǎng)問(wèn)的數(shù)據(jù)庫(kù),計(jì)數(shù)器復(fù)位
?61Public?Sub?DBapi_Disconnect()Sub?DBapi_Disconnect()
?62??Connect_Num?=?0
?63??Disconnect
?64End?Sub
?65
?66'執(zhí)行數(shù)據(jù)庫(kù)操作語(yǔ)句
?67Public?Sub?SQLExt()Sub?SQLExt(ByVal?TmpSQLstmt?As?String)
?68??'創(chuàng)建Command對(duì)象cmd
?69??Dim?cmd?As?New?ADODB.Command
?70??
?71??'連接到數(shù)據(jù)庫(kù)
?72??DB_Connect
?73??'設(shè)置cmd的ActiveConnection屬性,指定與其關(guān)聯(lián)的數(shù)據(jù)庫(kù)連接
?74??Set?cmd.ActiveConnection?=?cnn
?75??'設(shè)置要執(zhí)行的命令文本
?76??cmd.CommandText?=?TmpSQLstmt
?77'?MsgBox?TmpSQLstmt
?78??'執(zhí)行命令
?79???cmd.Execute
?80??'清空cmd對(duì)象
?81??Set?cmd?=?Nothing
?82??'斷開(kāi)與數(shù)據(jù)庫(kù)的連接
?83??DB_Disconnect
?84End?Sub
?85
?86'執(zhí)行數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)句
?87Public?Function?QueryExt()Function?QueryExt(ByVal?TmpSQLstmt?As?String)?As?ADODB.Recordset
?88??'創(chuàng)建Recordset對(duì)象rst
?89??Dim?rst?As?New?ADODB.Recordset
?90??
?91??'連接到數(shù)據(jù)庫(kù)
?92??DB_Connect
?93??'設(shè)置rst的ActiveConnection屬性,指定與其關(guān)聯(lián)的數(shù)據(jù)庫(kù)連接
?94??Set?rst.ActiveConnection?=?cnn
?95??'設(shè)置游標(biāo)類(lèi)型
?96??rst.CursorType?=?adOpenDynamic
?97??'設(shè)置鎖定類(lèi)型
?98??rst.LockType?=?adLockOptimistic
?99??'打開(kāi)記錄集
100??rst.Open?TmpSQLstmt
101??'返回記錄集
102??Set?QueryExt?=?rst
103End?Function
104
轉(zhuǎn)載于:https://www.cnblogs.com/ruinet/archive/2007/03/28/691471.html
總結(jié)
以上是生活随笔為你收集整理的VB 6.0中的数据连接模块的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Guice 1.0 用户指南
- 下一篇: 安装Tomcat6.0