「AccessDBのコネクション取得」の編集履歴(バックアップ)一覧はこちら
「AccessDBのコネクション取得」(2013/06/09 (日) 00:42:26) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
***AccessDBのコネクション取得
- ソース
Private filename As String
Private filepath As String
Private Sub class_initialize()
filename = ""
filepath = ""
End Sub
Public Function GetFileName() As String
GetFileName = filename
End Function
Public Function GetFilePath() As String
GetFilePath = filepath
End Function
Public Function SetFileName(ByVal iStr As String)
filename = iStr
End Function
Public Function SetFilePath(ByVal iStr As String)
filepath = iStr
End Function
[[トップ]]
***AccessDBのコネクション取得
- ソース
Option Compare Database
Option Explicit
' ACC_AccessDBConnection
' AccessのDBのコネクションを簡易で取得する
' 実行環境にはADODBの参照設定が必要です
Private CAFObj As ACC_CheckAccessFile
Private ProviderStr_MDB As String
Private ProviderStr_ACCDB As String
Private Sub class_initialize()
Set CAFObj = New ACC_CheckAccessFile
ProviderStr_MDB = "Microsoft Jet OLEDB.4.0"
ProviderStr_ACCDB = "Microsoft.ACE.OLEDB.12.0"
End Sub
' GetDBConnection
' DB接続を行い、Connectionオブジェクトを取得する
' 引数:あり
' iFilePath :String :ファイル(含ファイルまでのフルパス)
' 戻り値:あり
' ADODB.Connection :Accessのプロバイダ名
Public Function GetDBConnection(ByVal iFilePath As String) As ADODB.Connection
Dim dbCon As ADODB.Connection
Set dbCon = New ADODB.Connection
dbCon.ConnectionString = "provider=" & _
GetConnectProviderString(iFilePath) & _
";" & _
"Data Source=" & _
iFilePath
dbCon.Open
Set GetDBConnection = dbCon
End Function
' GetConnectProviderString
' DB接続のConnectionStringプロパティに設定するAccessのプロバイダ名を取得する
' 引数:あり
' iFilePath :String :ファイル(含ファイルまでのフルパス)
' 戻り値:あり
' String :Accessのプロバイダ名
Private Function GetConnectProviderString(ByVal iFilePath As String) As String
Dim resultStr As String
Dim acFilePattern As Long
acFilePattern = CAFObj.GetAccessFilePattern(iFilePath)
If acFilePattern > 10 Then
resultStr = ProviderStr_ACCDB
ElseIf acFilePattern > 0 Then
resultStr = ProviderStr_MDB
Else
resultStr = ""
End If
GetConnectProviderString = resultStr
End Function
[[トップ]]