2

Delphi 7、ADO、および ORACLE を使用するアプリケーションを開発しました。使用するプロバイダーは OraOLEDB です。Oracle サーバーに接続するには、何をインストールする必要がありますか。(アプリまたはドライバーをリストしてください)

OS : Win7 64x Delphi : 7

Oracle サイトから OraOLEDB_90101 をインストールしました。デルファイのadoConnectionでOraOLEDBを見ることができます。環境変数 (システムとユーザー) で TNS_Admin を定義します: D:\oracle\ora90\network\ADMIN 私の tnsnames.ora は:

DS2 =
(DESCRIPTION =
(ADDRESS_LIST =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.254.50)(PORT = 1521))
)
(CONNECT_DATA =
  (SID = ict)
  (SERVER = DEDICATED)
)
)

また、ホスト (C:\Windows\System32\drivers\etc) で「10.1.254.50 ds2」を定義します。コマンドプロンプトで「tnsping ds2」を実行できますが、フォームに ADOConnection を追加し、connectionString を「Provider=OraOLEDB.Oracle.1;Persist Security Info=False;User ID=tehranvu;Data Source=ds2」に設定するたびに選択します。 TRUE に接続すると、「ORA 12154: TNS: サービス名を解決できませんでした。」というエラー メッセージが表示されます。UDL ファイルを作成しましたが、「テスト接続」は問題ありません。(udl ファイルから接続文字列をコピーしても機能しません) !!!!

接続文字列を次のように設定します。

"Provider=OraOLEDB.Oracle;Persist Security Info=True;
 UserId=xxxx;Password=xxxx;Data       Source=(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = 
 (PROTOCOL = TCP)(HOST = DS2)(PORT = 1521)))(CONNECT_DATA =(SID = ict)(SERVER = 
 DEDICATED)(SERVICE_NAME=DS2)))"  

しかし、それは同じエラーを発生させます!!!

Delphiで「サービス名」を解決するには、他にどのアプリまたはドライバーをインストールする必要がありますか(Oracleクライアントなど)?

4

1 に答える 1

0

試す

  • コードを UDL ファイルから接続文字列に貼り付けます。
  • ODBC プロバイダーを構成します。
于 2015-02-02T10:48:28.233 に答える