• ベストアンサー

Oracle9i でODBC接続したい

Oracle初心者です。 ODBC接続したいのですがうまくいきません。 【環境】 win2003サーバ(XPに上にVirtualPCを使ってたてたサーバ):Oracle9iインストール winXP:Oracle9iのインストールCDからODBCドライバのみインストール 【作業内容】 ○Win2003サーバ ・Net Configuration Assistant で ローカル・ネット・サービス名を登録し  正常に接続できることを確認。 ・DSNを登録し接続テストを実施 → 成功。 ○WinXP ・DSNを登録し接続テストを実施 → 失敗。    接続できませんでした。  SQLState=08004  [Oracle][ODBC][Ora]ORA-12154:TNS:サービス名を解決できませんでした。    という上記エラーメッセージが表示されます。  何か根本的に間違っているのかもしれませんが解決策がわかりません。  どうかお力を貸して下さい。  よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.2

 ローカルネットサービス名はXP側に登録します。Win2003にはローカルネットサービス名は不要。Win2003側に必要なのはTNSリスナーの設定(多分Oracle Serverインストール時に自動で行われているはず)。  そもそもODBCドライバ「のみ」ではよそのパソコンのOracleには接続できません。Oracle Net、Oracle OCIなどの「Oracle Client」が必要です。状況から、それはXP側に入っていると推測されるので問題はないですけど。 手順 1.XPでOracle Net ManagerあるいはNet Configuration Assistantでローカルネットサービス名を作る。ここで接続できるか確認(ここでつながらないのにODBCでつながる訳が無い)。 2.ODBCのDSNにそのネットサービス名をつけて接続確認。

searching
質問者

お礼

anmochi様 回答ありがとうございます。 ODBCドライバのみをわざわざ選択してインストールしていたので、「Oracle Client」はインストールしていませんでした。 「Oracle Client」が必要だと分かりましたので、早速インストールしました。 その上で、教えて頂いた手順で確認しODBC接続に成功しました。 ありがとうございました。

その他の回答 (1)

  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.1

ODBC接続するなら、クライアント側には、ODBCドライバのみではなく、クライアントライセンスが必要だと思います。 その上で、Net Configuration Assistant(と言うか、tnsnames.oraの編集)で接続先を設定します。 ODBCアドミニストレータの前に、まず、tnspingやsqlplusでの疎通を確認してください。DSNの設定はその後です。

searching
質問者

お礼

utakataXEX様 回答ありがとうございます。 ODBC接続するにはクライアントライセンスが必要だったのですね。 いつまで経っても接続できない訳ですね・・・。 ということで早速インストールしました。 きちんと手順を踏んで確認したいと思います。

関連するQ&A