sql >> データベース >  >> RDS >> Oracle

SqlServerとOracleの両方で動作する.Netアプリケーションを作成する方法(System.Data.OracleClientは非推奨になりました)

    編集:完全に管理されたODP.NETが本番環境で利用できるようになりました。非常に小さく(10MB未満)、他のファイルに依存しません。こちらから入手できます:

    http://www.oracle.com/technetwork/topics/dotnet/downloads/index.html

    元の回答:

    簡単にする1つの方法 必要なOracleクライアント側ソフトウェア(ODP.NETを含む)がデプロイメントマシンで常に利用可能であることを確認して、アプリケーションに組み込みます。 ODP.NETはたくさんを獲得しました XCOPY ODP.NETが利用可能になったため、埋め込みが簡単になりました。このリンクからダウンロードできます:

    http://www.oracle.com/technology/software/tech/windows/odpnet/index.html

    XCOPY ODP.NETを使用すると、アプリケーションをデプロイするときに行う必要があるのは次のとおりです。

    1)アプリケーションをターゲットマシンにコピーします

    2)「install.bat」を実行して、いくつかのOracle DLLをターゲットマシン(ODP.NETおよびOracleクライアント側(OCI)ソフトウェアを含む)にコピーします

    3)「configure.bat」を実行します。これは「gacutil」を実行し、ターゲットマシンのレジストリを更新します

    4)アプリケーションに接続文字列情報を提供します。 EZCONNECT接続文字列( "[email protected]")を使用するか、または自分(または顧客)が、sqlnet接続エイリアスがすでに構成されている別のOracleホームを指すようにTNS_ADMINレジストリエントリまたは環境変数を設定することにより、既存のsqlnet構成を共有できます。 。

    それでおしまい!本当に簡単です。

    上記のリンクにあるODP.NETXCOPYをよく見て、最近のODP.NETをアプリに組み込むのがいかに簡単であるかを自分で確認してください。

    追記:

    アプリケーションにODP.NETを埋め込まないことを選択した場合は、Microsoft OracleClientの場合とODP.NETの場合の両方で、任意のデプロイメントマシンに追加のOracleクライアント側(OCI)ソフトウェアをインストールする必要があります。 2つのケースの唯一の違いは、ODP.NETを使用している場合、それがデプロイメントマシンにも存在する必要があることです。幸いなことに、お客様のマシンにインストールされる一般的なOracleには、すでにODP.NETが含まれています。

    これで、ターゲットマシンにすでにODP.NETがインストールされている場合は、他に何もする必要はありません。アプリケーションを配布する必要があります。標準インストーラーを使用してODP.NETをインストールする必要がある場合は、上記のリンクからダウンロードすることもできます。標準のODP.NETインストールは数分で完了し、すべてを構成します。

    また、EZConnect接続文字列を使用してネットワーク構成を簡単にすることも、TNS_ADMINレジストリエントリまたは環境変数を使用して、顧客がすでに使用している既存の接続エイリアスを利用することもできます。

    これがお役に立てば幸いです

    クリスチャンシェイ

    Oracle

    機能要求Webサイト(http://apex.oracle.com/pls/apex/f?p=18357:46

    )で、この機能およびその他の将来の機能に関するフィードバックをお気軽に提供してください。

    1. クエリ中にMySQLサーバーへの接続が失われました

    2. 列がSQLServerの計算列であるかどうかを確認する3つの方法

    3. PostgreSQLをリモートで管理するためのヒント

    4. Oracle:2つの日付間のHH:MM:SSの時間差を計算します