ODBCのDNS作り直し

先日、ウィルスに感染したとして急遽パソコン回収したパソコンに、SQLサーバーに接続する機能が設定されており、交換したパソコンでそれが使えないという相談がありました。

いつもMS-Accessで更新をかけると最新データが表示されるはずが、エラーメッセージが出るとのことです。原因は、ODBCが設定されていないからで、パソコンが新しくなったのだから当然です。

しかし、ウィルス感染したパソコンは既にデータをクリアした後で、その設定を確認できない。それで、私のところに相談がありました。

単に、ODBCにDSNを作成すればいいだけなので簡単です。まず、SQLサーバーに接続できるか確認します。幸い、担当者がサーバーの情報を持っていたので、DSNを作成すると、すぐに接続できました。また、データベースに以外とシンプルで、どのDBを使ったらいいか迷わずに済みました。

次に、いつも使っているというMS-Accessのファイルをコピーさせてもらって、動作テストです。ODBCの設定ができていないので、エラーが出ます。そして、そのエラーメッセージに、接続できないDSN名が表示されます。

MS-Accessをパススルーを利用する際、ODBCの設定は最初に1回だけ行います。そして、そこでMS-Accessが使うDSN名を登録してしまいます。たぶん、どこかの設定を変更すれば、DNS名を変えられると思うのですが、今回は探しませんでした。以前と同じDSN名にすれば復旧すると思われたからです。

そうして、動作テスト用に作ったDSNを、MS-Accessに登録されているDSN名に合わせ、MS-Accessのその動作しなかったファイルは、無事正常に動作しました。

解ってしまえば何でもないことですが、仕組みが解らないと途方に暮れる案件かもしれません。