インストレーション・ガイドおよびリリース・ノート
リリース11.2.0.3.0 プロダクション
このドキュメントでは、Oracle Providers for ASP.NET製品ドキュメントの補足情報について説明します。
Oracle Providers for ASP.NETでは、.NET Framework 2.0以上がサポートされます。
HKEY_LOCAL_MACHINE\Software\Oracle\NLS_LANGレジストリ・エントリが「NA」に設定されている場合は、Oracle Providers for ASP.NETの使用時にエラーORA-12705が発生する可能性があります。この問題を解決するには、HKEY_LOCAL_MACHINE\Software\Oracle\NLS_LANGレジストリ・エントリを削除します。
Oracle Providers for ASP.NETのインストール後、%windir%\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.configファイルが更新され、ASP.NETプロバイダがインストールされたことがシステムで認識されます。さらに、OraAspNetConStringの接続文字列別名が追加され、これは各Oracle Providers for ASP.NETによって参照されます。インストール後にmachine.configで作成されるエントリは、通常、次のとおりです。
(注意: machine.configでこれらのエントリを作成する必要はありません。これは参考情報です。)
(注意: 「...」はmachine.configの既存エントリ用のプレース・ホルダです。)
<configuration>
...
<connectionStrings>
...
<add name="OraAspNetConString" providerName="Oracle.DataAccess.Client" connectionString=" " />
</connectionStrings>
...
<system.web>
...
<membership>
<providers>
<add name="OracleMembershipProvider" type="Oracle.Web.Security.OracleMembershipProvider, Oracle.Web, Version=2.112.3.0, Culture=neutral, PublicKeyToken=89b483f429c47342" connectionStringName="OraAspNetConString" applicationName="" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="1" passwordAttemptWindow="10" passwordStrengthRegularExpression="" />
...
</providers>
</membership>
...
</system.web>
...
</configuration>
前述の例では、Oracleメンバーシップ・プロバイダのエントリのみを示しています。他のプロバイダにも同様のエントリが存在します。
次に、Oracle Providers for ASP.NETのクイック設定手順を示します。次の手順では、Oracle 11g 11.2.0.3.0プロダクションは有効なOracleホーム(これ以降、このreadme.txtでは%ORACLE_HOME%と表記します)にインストールされていることを想定しています。
1. SQL*Netの設定
a) EZCONNECT
EZCONNECTまたはTNSNAMESのいずれかを使用してOracleに接続し、Oracle Providers for ASP.NETの設定スクリプトの実行、およびOracleへのプロバイダの接続が可能です。いずれかの方法を使用してデータベースに接続するには、次のものを含むように%ORACLE_HOME%\Network\Admin\sqlnet.oraファイルを作成する必要があります。
NAMES.DIRECTORY_PATH = (TNSNAMES, EZCONNECT)
OS認証を使用して接続するには、sqlnet.oraに次の行も含める必要があります。
SQLNET.AUTHENTICATION_SERVICES = (NTS)
EZCONNECTを使用するには、次の形式でデータ・ソースを指定する必要があります(他の構成ファイルは不要です)。
[//]host[:port][/service_name][/server][/instance_name]
b) TNSNAMES
TNSNAMESを使用するには、%ORACLE_HOME%\Network\Adminディレクトリにtnsnames.oraファイルを作成するかまたはコピーする必要があります。
たとえば、%ORACLE_HOME%\Network\Admin\tnsnames.oraファイルを作成し、次のものを含めます。
oracle =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = my-pc)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
tnsnames.oraのプロトコル、ホスト、ポートおよびサービス名は適宜変更する必要があります。TNSNAMESを使用する場合、TNSNAMESの別名はデータ・ソースとして指定されます(前述の例では「oracle」)。
2. SQLスクリプトの実行
インストール時に示されるように、設定SQLスクリプトは、Oracle Providers for ASP.NETを使用する前に実行する必要があります。詳細は、『Oracle Providers for ASP.NET開発者ガイド』の第1章を参照してください。
SQLスクリプトを実行するSQL*Plusがない場合、Oracle Developer Tools (ODT) for Visual Studio 2005または2008をインストールおよび使用して、これらのスクリプトを実行できます。手順は次のとおりです。
a) Visual Studio 2005または2008 IDEを起動します。「Tools」メニューの下で、「Run SQL*Plus Script」を選択します。
b) 「Run SQL*Plus Script」ダイアログ・ボックスで、「New Connection」ボタンをクリックします。
c) 「Connection Properties」ダイアログで、データ・ソースにOracle Databaseサーバー(Oracle ODP.NET)を、データ・プロバイダにOracle Data Provider for .NETを選択します。「Data Source Name」ドロップダウン・リストからTNS別名を選択します。使用可能なエントリがない場合、前述のSQL*Net設定を参照してください。ユーザー名およびパスワードを入力するか、または「Use Windows integrated authentication」を選択します。「Test Connection」ボタンをクリックし、接続をテストします。成功した場合、「OK」をクリックして続行します。
注意: スクリプトにより、表、ストアド・プロシージャ、ビューおよびロールが作成されます。所有者は、スクリプトを実行したデータベース所有者です。スクリプトを実行したデータベース・ユーザーとは異なるデータベース・ユーザーとしてASP.NETアプリケーションがデータベースに接続している場合、データベース・ユーザー(ASP.NETプロバイダ用に作成されたデータベース・オブジェクトの所有者)は、他のデータベース・ユーザーがアクセスを必要とする際、そのユーザーにロールを付与する必要があります。 詳細は、Oracle Providers for ASP.NETのユーザーズ・ガイドの第1章を参照してください。
d) 「Run SQL*Plus Script」ダイアログ・ボックスに戻り、実行するSQLスクリプトを参照して選択します。通常、スクリプトの場所は%ORACLE_HOME%\ASP.NET\SQLです。
e) InstallOracleASPNETCommon.sqlスクリプトは、Oracle Providers for ASP.NETに対する他のスクリプトを実行する前に実行する必要があります。ただし、指定したデータベースに対してInstallOracleASPNETCommon.sqlスクリプトを実行した後は、そのデータベースに対して再度実行する必要はありません。
すべてのスクリプトを実行する必要はありません。たとえば、アプリケーションがOracleメンバーシップ・プロバイダのみを使用する場合、InstallOracleASPNETCommon.sqlおよびInstallOracleMembership.sqlスクリプトのみをこの順番で実行する必要があります。すべてのプロバイダに対してインストール・スクリプトを実行するには、InstallAllOracleASPNETProviders.sqlを実行することに注意してください。
削除には、実行したすべてのインストール・スクリプトに対して、対応するアンインストール・スクリプトを実行する必要があります。削除する際は、プロバイダ固有のアンインストール・スクリプトを実行した後、最後にUninstallOracleASPNETCommon.sqlスクリプトを実行する必要があります。たとえば、設定時にInstallOracleASPNETCommon.sqlおよびInstallOracleMembership.sqlを実行した場合、適切に削除するには、UninstallOracleMembership.sqlおよびUninstallOracleASPNETCommon.sqlをこの順番で実行する必要があります。UninstallAllOracleASPNETProviders.sqlを実行すると、InstallAllOracleASPNETProviders.sqlを実行して作成されたデータベース・オブジェクトをすべて削除できることに注意してください。
3. machine.configでの接続文字列属性(オプション)
アプリケーションによってmachine.configでOraAspNetConStringの別名が使用される場合、machine.configの有効な接続文字列に割り当てるか、またはweb.configに有効な接続文字列を指定することで設定を上書きする必要があります。
前述のMACHINE.CONFIGの自動変更の項の構成例を参照してください。接続文字列のデータ・ソース設定にEZCONNECTを使用して、tnsnames.oraファイルへの依存性をなくします。
4. Web.configファイル(オプション)
アプリケーションの構成ファイル(web.config)を使用して、machine.configファイルのデフォルトの設定を前述の手順で示したように上書きします。『Oracle Providers for ASP.NET開発者ガイド』に示すweb.configの例を参照してください。