質問

私たちは、Oracleに接続するSystem.Data.OracleClient.dllへと抽象基底クラスたDbConnection、たDbCommand(など)を使用しています。

接続は、当社の開発段階では正常に動作します。ステージングの間、我々は、エラーORA-12514が発生した:TNSは:リスナーは現在、接続記述子で要求されたサービスを認識していません。

私たちの目標は、TNSエントリせずに接続することで、接続文字列内のすべての関連情報を提供する(www.connectionstrings.com/oracle#19)

私はそのSQLを確認することができますプラス(リスナーがリスニング)ステージングサーバーから必要なスキーマに接続します。 SQLPlusをにフックTNSエントリは、構築されるクエリ文字列のすべての資格情報と一致します。

SERVER=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort))(CONNECT_DATA=(SERVICE_NAME=MyOracleSID)));uid=myUsername;pwd=myPassword;

私たちは逃したサーバーへのインストールはありますか?我々は微調整することができます何か?

すべてのヘルプは高く評価されます。

役に立ちましたか?

解決

SIDがサービス名ではありません。 SIDが短い識別子でありながら、サービス名は、通常、完全修飾されたデータベース名です。

あなたのSIDがdbnameにいる間に

サービス名はdbname.company.comかもしれません。インスタンスは、実際には、それに関連するいくつかのサービス名を持っていますが、唯一のSIDができます。

あなたの接続文字列内のSIDにあなたのSERVICE_NAMEを変更、またはSERVICE_NAMEのオプションについては、サービス名を指定します。

他のヒント

私が正しくリコール私は、OracleプロバイダとOracleDbConnectionとOracleDbCommandを使用してに切り替えるまで、

、私は同じ問題がありました。一般的なものは、常にすべてのケースで正しいプロバイダをインスタンス化しません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top