MS AccessからのODBC Oracle接続エラー
質問
現在、Microsoft ODBC Driver for Oracleを使用して接続をリンクしたMS Accessデータベースをサポートしています。問題なく現在のリンクされたテーブルに接続できますが、セキュリティ上の理由でサーバーにアクセスするアカウントのパスワードを変更する必要があります。
パスワードを正常に変更しましたが、テーブルをリンクしようとすると、エラーが表示されます。
ODBC--call failed
Microsoft ODBC driver for ORacle ORA-12154: TNS could not resolve service name
これらのテーブルは重要なアプリケーションの一部であり、接続できません。これを解決する方法についての提案はありますか?
解決
ORA-12154エラーは、解決していないTNSエイリアスを指定していることを示しています。 Oracleへの接続にDSNを使用していますか?もしそうなら、あなたがそこに指定しているTNSエイリアスは何ですか?そのエイリアスはtnsnames.oraファイルに存在しますか?クライアントに複数のtnsnames.oraファイルがありますか?
tnsnames.oraファイルは、アクセスがインストールされているクライアントマシンにあります。どのバージョンのOracleクライアントがインストールされているかを知らずに、どのtnsnames.oraファイルが使用されているかを見つける最も簡単な方法は、おそらくDOSプロンプトを開き、「tnsping」と入力することです。 service_name
「service_name」は、DSNでTNSエイリアスが指定されているものは何でもあります。あなたは次のようなものを得るでしょう
C:\Users\jcave>tnsping fuddy_duddy
TNS Ping Utility for 64-bit Windows: Version 11.2.0.1.0 - Production on 07-OCT-2
010 08:10:51
Copyright (c) 1997, 2010, Oracle. All rights reserved.
Used parameter files:
C:\oracle\product\11.1.0\db_1\NETWORK\ADMIN\sqlnet.ora
TNS-03505: Failed to resolve name
「使用されているパラメーターファイル」行は、TNS関連ファイルが保存されるディレクトリを示します。そのディレクトリには、tnsnames.oraとsqlnet.oraファイルが必要です。