2013年3月25日月曜日

Windows Server 2008 R2にて32ビット用のODBCドライバ使用

Windows Server 2008 R2の64ビット環境にて、32ビット版用に開発されたODBCアプリケーションを動作させようとした際に、「指定されたDSNには、ドライバーとアプリケーションとのアーキテクチャの不一致が含まれています。」とのエラーとなり、ODBCでの接続ができない状況が発生しました。その対応方法を記載します。


32ビット版用に開発されたODBCアプリケーションは、32ビット用に設定されたODBCのDSNしか利用することができないことが分かりました。

管理ツールから利用できる「データ ソース (ODBC)」は、64ビット用のODBCデータソースアドミニストレーターを起動するようになっています。
32ビット用のODBCデータソースアドミニストレーターは以下のディレクトリに配置されていますので、そのプログラムを起動して、使用します。

C:\Windows\SysWOW64\odbcad32.exe

64ビット用のODBCデータソースアドミニストレーターで設定したDSN、32ビット用のODBCデータソースアドミニストレーターで設定したDSNは、それぞれのODBCデータソースアドミニストレーターでしか参照および変更はできませんので、注意する必要があります。