连接数据库
Option Explicit
'local variable(s) to hold property value(s)
Private lsServer As String 'local copy
Private lsDatabase As String
'local variable(s) to hold property value(s)
Private lsUserName As String 'local copy
Private lsPassword As String 'local copy
Private lsSelectSQL As String 'local copy
'local variable(s) to hold property value(s)
Private lsTable As String 'local copy
Public Property Let Table(ByVal vData As String)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.Table = 5
lsTable = vData
End Property
Public Property Get Table() As String
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.Table
Table = lsTable
End Property
Public Property Let SelectSQL(ByVal vData As String)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.SelectSQL = 5
lsSelectSQL = vData
End Property
Public Property Get SelectSQL() As String
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.SelectSQL
SelectSQL = lsSelectSQL
End Property
Public Property Let Password(ByVal vData As String)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.Password = 5
lsPassword = vData
End Property
Public Property Get Password() As String
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.Password
Password = lsPassword
End Property
Public Property Let UserName(ByVal vData As String)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.UserName = 5
lsUserName = vData
End Property
Public Property Get UserName() As String
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.UserName
UserName = lsUserName
End Property
Public Property Let Server(ByVal vData As String)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.Server = 5
lsServer = vData
End Property
Public Property Get Server() As String
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.Server
Server = lsServer
End Property
Public Property Let Database(ByVal vData As String)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.Database = 5
lsDatabase = vData
End Property
Public Property Get Database() As String
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.Database
Database = lsDatabase
End Property
Public Function ConnectDatabaseByODBCDNS(lsDNS As String) As ADODB.Connection
On Error GoTo Errhandle
Dim Conn As New ADODB.Connection
Dim strConn As String
strConn = "DSN=" & lsDNS & _
";UID=" & lsUserName & _
";Pwd=" & lsPassword
If Conn.State = adStateOpen Then
Conn.Close
End If
Conn.Open strConn
Conn.CursorLocation = adUseClient
Set ConnectDatabaseByODBCDNS = Conn
Exit Function
Errhandle:
Err.Raise 102, "DBConn.Cls", "Can't Connect To The " & Database & " Database!"
End Function
Public Function ConnectDatabaseByODBC() As ADODB.Connection
On Error GoTo Errhandle
Dim Conn As New ADODB.Connection
Dim strConn As String
strConn = "Provider=MSDASQL.1" & _
";User ID=" & lsUserName & _
";Password=" & lsPassword & _
";Persist Security Info=False" & _
";Initial Catalog=" & lsDatabase & _
";Data Source=" & lsServer
If Conn.State = adStateOpen Then
Conn.Close
End If
Conn.Open strConn
Conn.CursorLocation = adUseClient
Set ConnectDatabaseByODBC = Conn
Exit Function
Errhandle:
Err.Raise 10