📄 cls_connect.cls
字号:
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 1 'vbDataSource
MTSTransactionMode = 0 'NotAnMTSObject
END
Attribute VB_Name = "Cls_Connect"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Option Explicit
Dim Mycn As ADODB.Connection '声明一个连接
Dim MyRs As ADODB.Recordset '声明一个记录集
Dim myRecordsetName As String '声明一个表示“表名”的字符串
Dim MyQr1 As ADODB.Recordset
Dim MyQr2 As ADODB.Recordset
Dim MyCom As ADODB.Command
Dim MyPra As ADODB.Parameter
Dim MyPrb As ADODB.Parameter
Dim MyPrcName As String
Dim MyPrcPra As String
Dim MyPrcPrb As String
Dim MyQueryName As String
Private Sub Class_GetDataMember(DataMember As String, Data As Object)
Set Data = MyRs
End Sub
Private Sub Class_Initialize()
Set Mycn = New ADODB.Connection
'实例一个连接
Dim str As String
str = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=SIMS;Data Source=yongping"
Mycn.Open str
End Sub
Public Property Get RcdName() As String
'传递表名
RcdName = myRecordsetName
End Property
Public Property Let RcdName(ByVal vNewValue As String)
'传递表名
myRecordsetName = vNewValue
End Property
Public Function openRcd()
'按传递的表名打开表
Set MyRs = New ADODB.Recordset
'实例该连接
MyRs.Open myRecordsetName, Mycn, adOpenStatic, adLockOptimistic, adCmdTable
End Function
Public Property Get MRecordset() As ADODB.Recordset
'将该记录集传出
Set MRecordset = MyRs
End Property
Public Property Get PrcName() As Variant
'传递存储过程名
PrcName = MyPrcName
End Property
Public Property Let PrcName(ByVal vNewValue As Variant)
MyPrcName = vNewValue
End Property
Public Property Get PrcPra() As Variant
'传递参数名
PrcPra = MyPrcPra
End Property
Public Property Let PrcPra(ByVal vNewValue As Variant)
MyPrcPra = vNewValue
End Property
Public Property Get PrcPrb() As Variant
'传递参数名
PrcPrb = MyPrcPrb
End Property
Public Property Let PrcPrb(ByVal vNewValue As Variant)
MyPrcPrb = vNewValue
End Property
Public Function OpenPrc(ByVal pra As String)
'按传入的参数调用存储过程
Set MyQr1 = New ADODB.Recordset
Set MyCom = New ADODB.Command
With MyCom
.ActiveConnection = Mycn
.CommandType = adCmdStoredProc
.CommandText = MyPrcName
Set MyPra = .CreateParameter(PrcPra, adVarChar, adParamInput, 255, pra)
.Parameters.Append MyPra
Set MyQr1 = .Execute
End With
End Function
Public Function OpenPrc2(ByVal pra As String, ByVal prb As String)
'使用2个参数调用存储过程
Set MyQr1 = New ADODB.Recordset
Set MyCom = New ADODB.Command
With MyCom
.ActiveConnection = Mycn
.CommandType = adCmdStoredProc
.CommandText = MyPrcName
Set MyPra = .CreateParameter(PrcPra, adVarChar, adParamInput, 255, pra)
Set MyPrb = .CreateParameter(PrcPrb, adVarChar, adParamInput, 255, prb)
.Parameters.Append MyPra
.Parameters.Append MyPrb
Set MyQr1 = .Execute
End With
End Function
Public Property Get MStoreProcRS() As ADODB.Recordset
'将该记录集传出
Set MStoreProcRS = MyQr1
End Property
'根据查询语句查询
Public Property Get QryName() As Variant
'获得查询语句
QryName = MyQueryName
End Property
Public Property Let QryName(ByVal vNewValue As Variant)
'赋予查询语句
MyQueryName = vNewValue
End Property
Public Function openQry()
'按传入的查询语句打开相应的表
Set MyQr2 = New ADODB.Recordset
MyQr2.Open MyQueryName, Mycn, adOpenStatic, adLockOptimistic, adCmdText
End Function
Public Property Get MQueryRs() As ADODB.Recordset
'将该记录集传出
Set MQueryRs = MyQr2
End Property
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -