こんにちは、お世話になります。
SQLServerのOLEDBプロバイダのサポート廃止について、ACCESSからSQLServerにADOで接続しているプログラムを見なおしていています。
接続方法を変更することで、OLEDBプロバイダを使用していない接続で、今後も使っていける作りでしょうか?
ACCESS
1 Dim strServ As String 2 Dim strUser As String 3 Dim strPass As String 4 Dim strCtlg As String 5 strServ = "server" 6 strUser = "sa" 7 strPass = "pass" 8 strCtlg = "database" 9 10 Dim strConnectionString As String 11 12' strConnectionString = "Provider=SQLOLEDB;" 13' strConnectionString = strConnectionString & "Data Source = " & strServ & ";" 14' strConnectionString = strConnectionString & "User ID = " & strUser & ";" 15' strConnectionString = strConnectionString & "Password = " & strPass & ";" 16' strConnectionString = strConnectionString & "Initial Catalog = " & strCtlg & ";" 17 18 strConnectionString = "PROVIDER=MSDASQL;" 19 strConnectionString = strConnectionString & "DRIVER={SQL Server};" 20 strConnectionString = strConnectionString & "SERVER=" & strServ & ";" 21 strConnectionString = strConnectionString & "INITIAL CATALOG=" & strCtlg & ";" 22 strConnectionString = strConnectionString & "UID=" & strUser & ";" 23 strConnectionString = strConnectionString & "PWD=" & strPass & ";" 24 25 conn_ADO.ConnectionString = strConnectionString 26 conn_ADO.Open
このプログラムで、下記の接続確認を行い接続はできました。
確認した組み合わせ
・ACCESS2013 - SQLServer2014
・ACCESS2016(ランタイム) - SQLServer2014
・ACCESS2013 - SQLServer2016
・ACCESS2016(ランタイム) - SQLServer2016
※接続の他に、SELECT、INSERT、UPDATE、DELETE、PLSQLの呼び出しも同時に確認。
SQLServer2012より後のSQLServerから廃止ということで、元のSQLOLEDBでも接続確認しましたが、正常に動作してしまう為、将来を見越した対応になっているのか不安です。
2016/7/6 追記
解決策は見つかっていないのですが、私共は現状維持になりそうなのです。
情報を再確認すると、MSDASQLは非推奨な接続方法としてMicrosoftからリストアップされています(https://msdn.microsoft.com/ja-jp/library/cc407910.aspx)
このため様子を見るほうがいいのかなといった見解です。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/08 03:01