「簡単に文書化された」レガシーOracleデータベースと相互作用する必要があるアプリケーションを開発しています。そのプロセスを開始するには、ODBCリンクを使用してMSAccessデータベースへのビューを作成し、DB構造を理解できるようにしますが、セットアップ方法を理解できません。 ODBC OracleDBへの接続。
ホスト名とサービス名を使用して接続し、SQLDeveloperを使用してDBを表示することができました。しかし、ODBCのセットアップ方法がわかりません。私はWindows7を実行しており、Oracle 11g、Oracle Express Edition、Instant Client、およびODBC拡張機能をインストールしましたが、ODBCセットアップでは、Oracleは私に選択を求めていますTNSサービス名ですが、選択するものがなく、ホストを指定する場所もありません。tnsnames.oraでTNSをセットアップしようとしましたが、そのファイルの正しい場所がわからないのです。
これは簡単な部分だと本当に思いました。しかし、実際にはそうではありませんでした。
Tnsnames.oraファイルを生成する最も簡単なオプションは、Oracleに生成させることです。 Oracle Net Configuration Assistantを起動すると([スタート] | [Oracle in Oracle Home Name | Configuration and Migration Tools | Net Configuration Assistant))、「ローカルNetサービス名の構成」を選択できるはずです。 TNSエイリアスを追加(または変更)します。接続する必要のある情報を収集する手順を説明します。
テキストファイルを直接処理する方が快適な場合は、これをテンプレートとして使用して、%Oracle Home%\ network\ADMIN\tnsnames.oraのtnsnames.oraファイルを直接編集できます。
<TNS alias> =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(Host = <hostname or IP>)(PORT = <port>))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = <database service name>)
)
)
Tnsnames.oraで、SERVICE_NAMEをSIDに変更してみてください。それは私のために働いた。
私の経験1.TNSNAMES.ORAは次のとおりです。 XE =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(Host = 192.168.2.116)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = XE)))