ヘッダーをスキップ
Oracle® Data Provider for .NET Oracle TimesTen In-Memory Databaseサポート・ユーザーズ・ガイド
12cリリース1 (12.1) for Windows
E48239-03
 

 

Oracle® Data Provider for .NET

Oracle TimesTen In-Memory Databaseサポート・ユーザーズ・ガイド

12cリリース1 (12.1) for Windows

E48239-03(原本部品番号:E38358-05)

2014年6月

Oracle Data Provider for .NET(ODP.NET)は、Microsoft ADO.NETインタフェースの実装です。Oracle TimesTen In-Memory Database(TimesTen)に対するODP.NETサポートによって、.NETクライアント・アプリケーションからTimesTenデータベースへの、高速および効率的なADO.NETデータ・アクセスが提供されます。

このドキュメントでは、TimesTen環境でのODP.NETの使用に特有の側面についてのみ説明します。また、ODP.NET for TimesTenという用語はTimesTenをサポートするODP.NETという意味で使用します。

ODP.NETと関連APIに関する情報については、『Oracle Data Provider for .NET開発者ガイド』を参照してください。

ODP.NETは、次のいずれのTimesTenインストールでも使用できます。

このドキュメントの内容は次のとおりです。

このドキュメントの最後には、「ドキュメントのアクセシビリティについて」の項もあります。

TimesTen環境におけるODP.NETに関する最初の考慮事項

この項では、TimesTenでODP.NETを使用する前に認識おく必要のある事項について、次の内容で説明します。

ODP.NETでサポートされる環境およびTimesTenリリース

これは、ODP.NET 12.1リリースのTimesTenサポート用に改訂されたドキュメントです。

次の点に注意してください。

  • ODP.NET 12.1をTimesTenで使用するには、TimesTenリリース11.2.2が必要です。サポートされているネームスペースおよびAPIの詳細は、「TimesTenでのODP.NETネームスペースおよびクラスのサポート状況」を参照してください。ODP.NET 12.1は、対応するOracleデータベースまたはOracle Data Access Components (ODAC)のリリースで使用できます。


    注意:

    TimesTenリリース11.2.2.4.0以上をお薦めします。

  • このリリースの時点で、ODP.NET for TimesTenを使用できるのは次の環境です。

    • ODP.NET for .NET Framework 2.0 (Microsoft .NET Framework 3.5 SP 1以降の環境)

    • ODP.NET for .NET Framework 4 (Microsoft .NET Framework 4または4.5の環境)

  • ODP.NET for TimesTenは、TimesTenをサポートするすべてのMicrosoft Windows 32ビットおよび64ビット・プラットフォームで使用できます。ODP.NETの32ビット・バージョンは、TimesTenデータベースまたはTimesTen Clientの32ビット・インスタンスで使用する必要があります。同様に、ODP.NETの64ビット・バージョンは、TimesTenデータベースまたはTimesTen Clientの64ビット・インスタンスで使用する必要があります。

.NET関連の機能のサポート

ODP.NET for TimesTenでは、ODP.NET for Oracle Databaseで現在利用可能な機能のサブセットがサポートされています。このリリースの時点で、具体的には次の機能がサポートされています。

  • ODP.NET接続のプーリング

  • ODP.NETのトレース

現時点では、次の機能はODP.NET for TimesTenでサポートされていません。

  • ADO.NET Entity Frameworkオブジェクト・リレーショナル・マッパー

  • LINQ(言語統合問合せ)

現時点では、ODP.NET for TimesTenは、次のOracle Databaseクライアント・コンポーネントと相互運用できません。

  • Oracle Developer Tools for Visual Studio

  • Oracle Database Extensions for .NET

  • Oracle Providers for ASP.NET

TimesTenでODP.NETを使用する際の要件および前提条件

ODP.NET for TimesTenを使用する際には、次の要件があることに注意してください。

  • システムにTimesTen Data ManagerまたはTimesTen Clientのいずれか、または両方をインストールする必要があります。TimesTenは、ODP.NETやOCIに付属するものではありません。

  • PL/SQLがインストールされ、有効にされている必要があります。PL/SQLはTimesTenのインストールの際にデフォルトでインストールされます。これはデフォルトで有効になりますが、接続属性設定でPLSQL=1とするか、またはODBC Data Source Administratorを使用することでも有効にできます。

  • ODP.NET 12.1 for TimesTenは、Oracle Call Interface (OCI)のTimesTenサポートに依存し、OCIのバージョンはTimesTenで提供されるバージョンではなく、ODP.NET 12.1リリースで提供されるバージョンが必要です。

    「インストール後のパスに関する考慮事項」も参照してください。


    注意:

    • 参考までに、TimesTenに含まれるOCIのバージョンは、tt_install_dir\ttoracle_homeディレクトリ(tt_install_dirはTimesTenインストールのルート・ディレクトリ)の下にあります。このバージョンは、ODP.NETアプリケーションには使用しないでください。

    • もちろん、ODP.NETを使用しないOCIまたはPro*C/C++プログラムでは、OCIのTimesTenバージョンは問題なく使用できます。


  • Oracle DatabaseでODP.NETを使用する実行環境の要件は、TimesTenでODP.NETを使用する場合にも該当します。詳細は、『Oracle Data Provider for .NET開発者ガイド』を参照してください。

関連ドキュメント

前述のいくつかの説明では、Oracle TimesTen In-Memory DatabaseおよびOracle Databaseドキュメント・ライブラリのドキュメントについて言及しています。

TimesTenのドキュメントは、製品の配布メディアおよび次のURLのOracle Technology Networkで入手できます。

http://www.oracle.com/technetwork/database/database-technologies/timesten/documentation/index.html

Oracleのドキュメントは、Oracle Technology Networkの次の場所でも入手できます。

http://www.oracle.com/pls/db121/homepage

新機能

ODP.NET for TimesTenで次の機能がサポートされています。


注意:

『Oracle Data Provider for .NET開発者ガイド』の「新機能」の項の一覧に掲載されている新機能は、TimesTenではなくOracle Databaseに適用されます。(ただし、ODP.NET 12.1の文字データ型サポートの新機能については、「VARCHAR2、NVARCHAR2およびVARBINARYデータ型のサポート」を参照してください。)

ODP.NETの開始

この項では、ODP.NETの使用を開始する際に役立つ次の項目について説明します。インストール手順は、TimesTenに固有のものではないことに注意してください。

ODP.NETのインストール

この項では、次のインストールについて説明します。

ODP.NETのインストール手順は、TimesTen環境からは独立しています。TimesTenのインストール・ディレクトリには何もインストールされません。

関連するWindowsのレジストリ・エントリを含むODP.NETのインストールの詳細は、『Oracle Data Provider for .NET開発者ガイド』を参照してください。


重要:

  • ODP.NET for TimesTenを使用するには、ODP.NETをTimesTen Data ManagerまたはTimesTen Clientと同じシステムにインストールする必要があります。詳細は、『Oracle TimesTen In-Memory Databaseインストレーション・ガイド』のTimesTenのインストールに関する説明を参照してください。さらに、TimesTen DSNを構成する必要があります。DSNの設定については、『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』のTimesTenデータベースを識別するためのデータ・ソース名の識別方法に関する説明を参照してください。

  • 新しいバージョンのODP.NETをインストールする前に、以前のバージョンを削除することをお薦めします(ただし、必須ではありません)。

  • インストール手順の完了後のODP.NETバイナリの場所は、Oracle製品のインストールのタイプおよび.NETのバージョンによって異なります。詳細は、『Oracle Data Provider for .NET開発者ガイド』とODP.NETのREADMEファイルを参照してください。


Oracle Database 12.1の一部としてのODP.NETのインストール

Oracle Database 12.1の一部としてODP.NETをインストールする場合は、次の手順に従ってください。

このインストールでは、すべてのOracle Database環境での場合と同様に、Oracle Universal Installer(OUI)を使用します。setup.exeファイル(Disk1)を実行して、次の手順を完了します。

  1. 「インストール・タイプの選択」ダイアログで、「ランタイム」オプションを選択し、「次へ」を選択します。

    (インストール・オプションには、「Instant Client」、「ランタイム」、「カスタム」、「管理者」の4つがあります。「ランタイム」オプションには、Oracle ClientとODP.NETが含まれます。「Instant Client」オプションにはODP.NETは含まれません。「カスタム」インストールを使用する必要がある場合、ODP.NETのチェックボックスが用意されています。)

  2. 表示される「ソフトウェア更新のダウンロード」ダイアログでは、必要に応じて「ソフトウェアの更新のスキップ」オプションを選択できます。完了したら「次へ」を選択します。

  3. 表示された「製品言語の選択」ダイアログで、デフォルトの「英語」の言語設定を使用し(または希望の言語を選択し)、「次へ」を選択します。

  4. 表示された「Oracleホーム・ユーザー」ダイアログで、「既存のユーザーの使用」、「新規ユーザーの作成」または「組込みアカウントの使用」の中から目的に最適なものを選択します。

  5. 表示された「インストール場所の指定」ダイアログでは、通常は、Oracleベースのパスおよびソフトウェアの場所にデフォルト値を使用します。または、

    1. Oracleベース・パスに、Oracleホームの場所のパスを入力(または参照)します。

    2. ソフトウェア・ファイルをインストールする、Oracleホーム下の希望のディレクトリ位置のパスを入力(または参照)します。


      重要:

      パスにはスペースを含めることはできません。

  6. インストーラによって前提条件チェックが実行され、「サマリー」ダイアログが表示されます。「インストール」を選択します。

ODAC 12.1 for Windows(OUIバージョン)の一部としてのODP.NETのインストール

Oracle Data Access Components(ODAC)12.1リリースのOracle Universal Installer(OUI)バージョンの一部としてODP.NETをインストールするには、次の手順を実行します。

OUIインストール用にODAC ZIPファイルを解凍したステージング・ディレクトリにアクセスして、OUIのsetup.exeファイルを実行して、次の手順を実行します。

  1. OUIの「ようこそ」ページで、「次へ」を選択します。

  2. インストールする製品を選択するページで、「Oracle Data Access Components for Oracle Client 12.1.x.x.x」(適切なポイント・リリースの番号が示されます)を選択します。その後、「次へ」を選択します。

  3. インストールの場所を指定するページで、希望に応じてデフォルト値を使用するか、別の場所を指定します。「次へ」を選択します。

  4. 使用可能な製品コンポーネントを選択するページでは、デフォルトで「Oracle Data Access Components for Oracle Client 12.1.0.1.0」が選択されていて、選択解除できません(手順2でこの製品を選択した場合)。その下で、Oracle Data Provider for .NETが選択されていること(デフォルト)を確認します。また、ODP.NETに必要な、Oracle Instant Clientが選択されていること(デフォルト)も確認します。その他のコンポーネントは、ODP.NETではオプションです。「次へ」を選択します。


    注意:

    Oracle Providers for ASP.NETは、TimesTenには関係ありません。他の目的で必要な場合を除き、選択を解除できます。選択した場合は、一連のSQLスクリプトを実行するページ(この手順では取り上げません)が表示されることに注意してください。

  5. データベース接続設定のページでは、tnsnames.oraファイルに入力されるデータベース接続エントリ(別名)の入力を求められ、このファイルの場所が示されます。このページはそのままにして「次へ」を選択します。(データベース接続は後で、「ODP.NETアプリケーション用のTimesTen接続の設定」の説明に従って定義します。)

  6. サマリー・ページを確認して、「インストール」を選択します。インストール・ページに進捗状況が示されます。

  7. インストール後に、終了ページが表示されます。「終了」を選択できます。

ODAC 12.1 for Windows(XCopyバージョン)の一部としてのODP.NETのインストール

Oracle Data Access Components(ODAC)12.1リリースのOracle XCOPYバージョンの一部としてODP.NETをインストールするには、次の手順を実行します。64ビット・バージョンのインストール手順は32ビット・バージョンと同様です。

XCopyには、システム管理者用に、OUIで用意されているものよりも簡単かつきめ細かく操作することができる、標準のODP.NETクライアントよりも小さなODP.NETクライアントが用意されています。これにより、多数のコンピュータに本番をデプロイする際の利便性が向上し、カスタマイズしたデプロイメント・パッケージにODP.NETを埋め込むことが容易になります。

このインストールでは、Oracle Universal Installerは使用されません。かわりに、(XCopyインストール用にODAC ZIPファイルを解凍したインストール・ディレクトリにある)install.batバッチ・ファイルを実行してインストールを実行します。

ここではインストール手順の概要が説明されています。詳細は、readme.htmを参照してください(こちらもインストール・ディレクトリに含まれています)。


重要:

readme.htmファイルでは、次の点が強調されています。
  • 既存のOUIベースのOracleホーム・インストールにXCopyを上書きインストールしないようにする必要があります。

  • 同じディレクトリに複数のODAC製品をインストールする場合、その都度同じOracleホームを指定します。

  • ODAC製品と依存関係は、デフォルトで、すでに新しいバージョンがインストールされているかを確認することなくインストールされます。


install.batを実行し、インストールを希望するODAC製品を指定します。たとえば、C:\oracle\odacがインストール・ディレクトリであり、odachomeがODACのOracleホームの名前だと仮定した場合、クライアントにODP.NET for .NET 2.0ライブラリのみをインストールする場合は、次のコマンドを使用します。

install.bat odp.net2 C:\oracle\odac odachome

または、クライアントにODP.NET for .NET 4ライブラリのみをインストールするには、次のコマンドを実行します。

install.bat odp.net4 C:\oracle\odac odachome

または、クライアントにすべてのODAC製品をインストールするには、次のコマンドを実行します。

install.bat all C:\oracle\odac odachome

インストール後のパスに関する考慮事項

TimesTen環境では、ODP.NETにより適切なOCIバージョンが検出され使用されます(つまり、TimesTen Instant ClientバージョンではなくOracle Clientのバージョン)。さらに、パスについて次が確認されます。

  1. PATHの設定に、tt_install_dir\binのTimesTen共有ライブラリの場所の設定があることが確認されます(ここで、tt_install_dirはTimesTenインストールのルート・ディレクトリです)。これは、パス内のその他のOracleディレクトリの後に続きます。

  2. XCopyインストールの場合、TimesTenのディレクトリを含むその他のOracleディレクトリの後に、PATH設定に、ODACインストール・ディレクトリとODACインストールbinディレクトリを追加します。たとえば、C:\oracle\odacがインストール・ディレクトリであるとします。

    set PATH=C:\oracle\odac;C:\oracle\odac\bin;%PATH%
    

注意:

ODP.NETの設定の詳細は、ODP.NETのREADMEファイルを参照してください。

ODP.NETのアンインストール

ODP.NETを含むOracle Database製品のアンインストールの詳細は、『Oracle Databaseインストレーション・ガイド for Microsoft Windows』のOracle Databaseソフトウェアの削除に関する説明を参照してください。

OUIを使用してインストールしたバージョンをアンインストールするには、setup.exeを再実行します(「ODAC 12.1 for Windows (OUIバージョン)の一部としてのODP.NETのインストール」を参照)。OUIのようこそページで、「製品の削除」をクリックします。表示された「インベントリ」ダイアログで、アンインストールする製品を1つまたは複数選択し、「削除」を選択します。「確認」ダイアログと「警告」ダイアログで「はい」を選択します。製品がアンインストールされたら「インベントリ」ダイアログを閉じます。

XCopyインストールをアンインストールするには、アンインストールする製品(またはすべての製品)とODAC製品のOracleホーム名を指定し、ODP.NETインストール・ディレクトリ(「ODAC 12.1 for Windows(XCopyバージョン)の一部としてのODP.NETのインストール」を参照)からuninstall.batバッチ・ファイルを実行します。たとえば、ODP.NET for .NET 2.0ライブラリを含むクライアントをアンインストールするには、Oracleホーム名がodachomeであると仮定した場合、次のように実行します。

uninstall.bat odp.net2 odachome

または、すべてのODAC製品をアンインストールするには、次を実行します。

uninstall.bat all odachome

ODP.NET用のアプリケーションの構築

アプリケーションを構築するには、Visual Studio IDEを使用するか、Visual Studioのコマンド・プロンプトからcsc.exeコマンドライン・コンパイラを使用します。次の例では、csc.exeを使用します(ここで、すべての入力は1つのコマンド行で行います)。

C:\Temp> csc /out:myapp.exe /reference:C:\app\mydir\path\
Oracle.DataAccess.dll myapp.cs

Microsoft (R) Visual C# 2005 Compiler version 8.00.50727.3053
for Microsoft (R) Windows (R) 2005 Framework version 2.0.50727
Copyright (C) Microsoft Corporation 2001-2005. All rights reserved.

Oracle.DataAccess.dllアセンブリおよび依存ライブラリの場所は、Oracle製品のインストールのタイプおよび.NETのバージョンによって異なります。詳細は、『Oracle Data Provider for .NET開発者ガイド』およびODP.NETのREADMEファイルを参照してください。


注意:

Visual Studioは、ODP.NET for TimesTenのランタイムの必須要件ではありませんが、アプリケーションを開発する場合は、Visual Studioに同梱のC#コンパイラなどの.NETコンパイラが必要です。

ODP.NETアプリケーション用のTimesTen接続の設定

ODP.NET for TimesTenでは、TimesTenおよびOracle Databaseへの複数の同時接続がサポートされています。ODP.NETインタフェース用に記述された既存のアプリケーションは、アプリケーション・コードに対して一連の最小限の変更を加えることで、TimesTenにアクセスできます。

TimesTen環境でODP.NETは、TimesTenデータベースとの通信にOCIを使用します。したがって、Oracle Databaseの場合と同様に、ODP.NETアプリケーションはtnsnamesまたはeasy connectネーミング・メソッドを使用してTimesTenと接続できます。次で説明するtnsnamesおよび簡易接続ネーミング・メソッドについて詳しくは、『Oracle Database Net Services管理者ガイド』のネーミング・メソッドの構成に関する項を参照してください。

この項の内容は次のとおりです。


注意:

  • TimesTenでは、OCIを使用した分散トランザクションがサポートされていません。したがって、ODP.NETアプリケーションではTimesTen接続で分散トランザクションを使用できません。

  • ODP.NET for TimesTenではグローバル・ランタイム・ロード・バランシング(Oracle RACデータベースの機能)はサポートされないため、接続文字列属性設定Load Balancing=trueもサポートされません。

  • TimesTenへの接続に関するODP.NETアプリケーションのエラー・メッセージは、TimesTenのOCIのエラー・メッセージのマッピングに基づきます。TimesTen OCIエラーは、OracleExceptionオブジェクトとしてODP.NETアプリケーションとして伝播されます。(『Oracle TimesTen In-Memory Database C開発者ガイド』の「OCIエラー・レポート」も参照してください。)


tnsnamesネーミング・メソッドを使用した接続

TimesTenでは、tnsnames構文がサポートされています。TimesTen tnsnames.oraエントリは、Oracle tnsnames.oraエントリの場合と同様に使用できます。

次に、tnsnames.oraでのTimesTenエントリの構文を示します。

tns_entry = (DESCRIPTION =
               (CONNECT_DATA =
                  (SERVICE_NAME = dsn)
                  (SERVER = timesten_direct | timesten_client)))

ここで、tns_entryは、エントリに割り当てる任意のTNS名です。次の点に注意してください。

  • ここで示されているように、DESCRIPTIONおよびCONNECT_DATAは必要です。

  • SERVICE_NAMEdsnは、ODBC Data Source Administratorで定義されているTimesTenデータ・ソース名(DSN)である必要があり、ODP.NETアプリケーションを実行するユーザーから参照可能である必要があります。

  • SERVERでは、timesten_directでTimesTenデータベースへの直接接続が指定され、timesten_clientではクライアント/サーバー接続が指定されます。timesten_directを指定した場合、dsnはTimesTen Data Manager DSNにする必要があります。timesten_clientを指定した場合、dsnはTimesTen Client DSNにする必要があります。

DSN my_dsnが参照するTimesTenデータベースへの直接接続用のtnsnames.oraエントリの例を次に示します。

my_tnsname = (DESCRIPTION =
                (CONNECT_DATA =
                   (SERVICE_NAME = my_dsn)
                   (SERVER = timesten_direct)))

ユーザーscottとパスワードtigerを使用し、tnsnames.oraファイルのmy_tnsnameエントリによって参照されるmy_dsn TimesTenデータベースに接続するには、ODP.NETアプリケーションで次の接続文字列を指定します。

"User Id=scott;Password=tiger;Data Source=my_tnsname"

tnsnames.oraファイルのmy_tnsnameエントリによって参照されるmy_dsnに現在のオペレーティング・システム・ユーザーとして接続するには、ODP.NETアプリケーションで次の接続文字列を指定します。現行のオペレーティング・システム・ユーザーは、TimesTenインスタンス管理者または定義済のTimesTen外部ユーザーである必要があります。

"User Id=/;Data Source=my_tnsname"

接続用の簡易接続ネーミング・メソッドの使用

TimesTenでは、tnsnames.oraエントリを構成せずに接続を許可する簡易接続構文をサポートしています。TimesTen簡易接続文字列の構文は次のとおりです。

host/service_name:server

次の点に注意してください。

  • 簡易接続の構文に従うにはホスト名を指定する必要があります(指定しない場合、TimesTenでは無視されます)。慣例的に、通常localhost名が使用されます。

  • service_nameには、ODP.NETアプリケーションを実行するユーザーから参照可能なODBC Data Source Administratorで定義されているTimesTen DSNを指定します。

  • serverでは、timesten_directではTimesTenデータベースへの直接接続が指定され、timesten_clientではクライアント/サーバー接続が指定されます。timesten_directを指定した場合、service_nameはTimesTen Data Manager DSNである必要があります。timesten_clientを指定した場合、service_nameはTimesTen Client DSNである必要があります。

ユーザーscottとパスワードtigermy_dsn DSNから参照されるTimesTenデータベースへの直接接続を確立するには、ODP.NETアプリケーションで次の接続文字列を指定します。

"User Id=scott;Password=tiger;Data Source=localhost/my_dsn:timesten_direct"

現在のオペレーティング・システム・ユーザーとしてmy_dsnによって参照されるTimesTenデータベースへの直接接続を確立するには、ODP.NETアプリケーションで次の接続文字列を指定します。現行のオペレーティング・システム・ユーザーは、TimesTenインスタンス管理者または定義済のTimesTen外部ユーザーである必要があります。

"User Id=/;Data Source=localhost/my_dsn:timesten_direct"

使用する接続方法の設定(tnsnamesまたは簡易接続ネーミング・メソッド)

sqlnet.oraファイルが存在する場合、このファイルは、試行するネーミング・メソッドおよびその試行順序を指定します。ODP.NETは次の優先順位でsqlnet.oraファイルを検索します。

  1. TNS_ADMIN環境変数が設定されている場合、ODP.NETではその指定場所が検索されます。

  2. TNS_ADMINが設定されていない場合、Oracle Databaseのデフォルトの場所は、『Oracle Database Net Servicesリファレンス』の「sqlnet.oraファイルのパラメータ」の説明のとおりにODP.NETによって検索されます。

sqlnet.oraが検出された場合、そこに示されるネーミング・メソッドのみを使用できます。sqlnet.oraが検出されない場合、tnsnamesまたは簡易接続ネーミング・メソッドのいずれかを使用できます。

TimesTenでは、tnsnames.oraおよびsqlnet.oraファイルのサンプル・コピーはtt_install_dir\network\admin\samplesディレクトリにあります(ここで、tt_install_dirはTimesTenインストールのルート・ディレクトリです)。次にTimesTenで用意されている、tnsnamesネーミング・メソッドと簡易接続ネーミング・メソッドの両方をサポートするsqlnet.oraファイルを示します。

# To use ezconnect syntax or tnsnames, the following entries must be
# included in the sqlnet.ora configuration.
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

この設定では、ODP.NETはまず接続文字列からtnsnames構文を検索します。tnsnames構文を検索できない場合は、簡易接続文字列を検索します。


重要:

ODP.NETには、Oracle Databaseネットワーク・ライブラリが含まれます。TimesTen環境では、ODP.NETはTimesTen付属のInstant Clientに含まれるOracle Databaseネットワーク・ライブラリのコピーを使用しません(参考: TimesTen 11.2.2リリースが同梱されて出荷されるOracle Database 11.2 Instant Clientの場合、tt_install_dir\ttoracle_home\instantclient_11_2にあります。)

ODP.NET接続文字列へのTimesTen接続属性の設定

次の構文で、ODP.NET接続文字列のPassword設定にTimesTen接続属性を設定できます。

  • パスワード設定自体と任意のTimesTen接続属性の設定を含む、Password設定の構成要素は、セミコロンで区切ります。

  • Password設定にセミコロンが含まれる場合は、必ず設定全体を引用符で囲む必要があります。

  • ODP.NET接続文字列全体が引用符で囲まれるので、Password設定の始まりの引用符と終わりの引用符の前にはそれぞれ\のエスケープ文字が必要です。

次の例では、TimesTenでユーザーscottに対し、パスワードlionを設定します。また、TimesTen Application-Tier Database Cache (TimesTen Cache)を使用するために、Oracle Databaseでユーザーscottに対しパスワードtigerを指定する、TimesTen OraclePWD接続属性も設定します。

"Data Source=mysource;User Id=scott;Password=\"lion;OraclePwd=tiger\"";

次の例では、また、TimesTenでユーザーscottに対し、パスワードlionを設定します。今回は、TimesTenのOracleNetServiceName接続属性とOraclePWD接続属性を設定します。OracleNetServiceNameでは、Oracle DatabaseのOracle IDを、対応するパスワードtigerを指定しOraclePWD設定に指定します。この例では、最後にTimesTenパススルー・レベルを1に設定します。

"Data Source=mysource;User ID=scott;Password=\"lion;OraclePwd=tiger;
OracleNetServiceName=mytest-pc.example.com;passthrough=1\"";

(TimesTen接続属性の一般的な情報は、『Oracle TimesTen In-Memory Databaseリファレンス』の接続属性に関する説明を参照してください。)


注意:

『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』のTimesTenデータベースの管理に関する説明に従うと、通常どおり、ODBC Data Source AdministratorのTimesTen DSN定義にTimesTen接続属性を設定できます。ただし、これは安全ではないので、OraclePWD属性などのパスワード設定は推奨されません。

TimesTenでのODP.NETインストールのテスト

.NET環境でTimesTenを使用するODP.NETをテストするには、次の手順を実行します。

これらのテストを実行するには、Quick Startサンプル・プログラムを含むTimesTenインストールが必要です。次の手順は、Visual Studioの使用を想定しています。

  1. build_sampledb.batスクリプトをtt_install_dir\quickstart\sample_scripts\createdb\ディレクトリから実行します(tt_install_dirはTimesTenインストールのルート・ディレクトリです)。これによってsampledb_1122というTimesTenデータベースがユーザーとオブジェクトとともに作成されます。

  2. ODP.NETサンプル・プログラムをシステムのDemoODP.csにコピーします。これは、次のTimesTen Quick Startディレクトリにあります。

    tt_install_dir\quickstart\sample_code\odp.net\
    
  3. 次を含むtnsnames.oraファイルを作成します。

    SAMPLEDB_1122 =(DESCRIPTION=(CONNECT_DATA = 
       (SERVICE_NAME = SAMPLEDB_1122)(SERVER = timesten_direct)))
    
  4. Visual Studioコマンド・プロンプトを開き、作成したtnsnames.oraファイルの場所を指定する環境変数TNS_ADMINを設定します。次に例を示します。

    >set TNS_ADMIN=c:\mytnsdir\sqlnet
    
  5. DemoODP.csが配置されたディレクトリに移動し、DemoODPプログラムをコンパイルします。次に例を示します。

    csc /out:DemoODP.exe /reference:C:\path\Oracle.DataAccess.dll DemoODP.cs
    

    注意:

    • Oracle.DataAccess.dllアセンブリおよび依存ライブラリの場所は、Oracle製品のインストールのタイプおよび.NETのバージョンによって異なります。詳細は、『Oracle Data Provider for .NET開発者ガイド』およびODP.NETのREADMEファイルを参照してください。

    • TimesTen 11.2.2リリースのTimesTenサンプル・データベース名は、sampledb_1122です。


  6. DemoODPを次のとおり実行します。(データベース名、ユーザー名、パスワードは、build_sampledb.batの実行時に自動的に判別されます。)

    DemoODP -db sampledb_1122 -user appuser -passwd welcome1
    

これによって、次が出力されます。

   Start Test
   The employee who got the 10% pay raise was CLARK
   
   Employees in department #50:
   7944, ITMGR, MANAGER, 7839, 10/08/2010 10:34:20 AM, 2500, <NULL>, 50
   7945, DVLPR1, DEVELOPER, 7944, 10/08/2010 12:00:00 AM, 2000, <NULL>, 50
   7946, DVLPR2, DEVELOPER, 7944, 10/08/2010 12:00:00 AM, 2000, <NULL>, 50
   7947, DVLPR3, DEVELOPER, 7944, 10/08/2010 12:00:00 AM, 2000, <NULL>, 50
   7948, DVLPR4, DEVELOPER, 7944, 10/08/2010 12:00:00 AM, 2000, <NULL>, 50
   7949, DVLPR5, DEVELOPER, 7944, 10/08/2010 12:00:00 AM, 2000, <NULL>, 50
   7950, DVLPR6, DEVELOPER, 7944, 10/08/2010 12:00:00 AM, 2000, <NULL>, 50
   7951, DVLPR7, DEVELOPER, 7944, 10/08/2010 12:00:00 AM, 2000, <NULL>, 50
   7952, DVLPR8, DEVELOPER, 7944, 10/08/2010 12:00:00 AM, 2000, <NULL>, 50
   7953, DVLPR9, DEVELOPER, 7944, 10/08/2010 12:00:00 AM, 2000, <NULL>, 50
   7954, DVLPR10, DEVELOPER, 7944, 10/08/2010 12:00:00 AM, 2000, <NULL>, 50
   Test finished

TimesTenにおけるODP.NETデプロイ時の考慮事項

この項では、TimesTen環境にODP.NETを使用するアプリケーションをデプロイする際に認識しておく必要のある事項について、次の内容で説明します。

結果セットおよびREF CURSORに対するトランザクションのコミットの影響

文の実行およびREF CURSORの作成によって生成される結果セットの処理では、TimesTen接続でトランザクションがコミットされるときの動作と、Oracle Database接続でトランザクションがコミットされるときの動作は異なります。OracleDataReaderオブジェクトの結果セットがオープンしているとき、TimesTenでトランザクションがコミットされると、Oracle Databaseの場合とは異なり結果セットは自動的にクローズされます。これは、明示的なコミット、自動コミット、暗黙的なコミットの場合に該当します。

TimesTenでは暗黙的なコミットは、DDL文の後に実行されます。ODP.NETでは、コマンド接続からOracleTransactionオブジェクトが事前にインスタンス化されていない状態でOracleCommandオブジェクトが実行されると、暗黙的なコミットも発生します。明示的なコミットは、CommitメソッドがOracleTransactionオブジェクトでコールされる際に発生します。いずれの場合にも、トランザクションでオープンされている結果セットが完全に処理される前にTimesTen接続でコミットが発生すると、「Function sequence error」例外がスローされる場合があります。

この動作の違いは、OracleCommandオブジェクトの実行が別のOracleCommandオブジェクトと関連付けられている結果セットの処理とインターリーブされるとき、発生する可能性が高くなります。「Function sequence error」例外を回避するには、結果セットの実行と処理はOracleTransactionオブジェクトのコンテキスト内に排他的に含められる必要があります。これによって、結果セットのすべての行が取得される前にコミットが発生することを回避できます。

Function sequence error」例外は、OracleCommandOracleRefCursorまたはOracleDataReaderオブジェクトのFetchSizeプロパティの値によって発生する場合があります。FetchSizeプロパティが明示的に設定されていなかったり、大きな値に設定されている場合、「Function sequence error」例外がスローされる前に、アプリケーションによって多数の行がフェッチされる場合があります。

TimesTen組込みプロシージャのサポート

TimesTen組込みプロシージャは、結果セットを戻さない組込みのみ、TimesTen OCIから直接コールできます。したがって、この制限は、ODP.NET for TimesTenにも適用されます。

次の例のように、OracleCommandインスタンスを使用し、組込みをコールします。ここでは、TimesTenへの接続がすでに確立されているOracleConnectionインスタンスconnを想定しています。OracleCommandインスタンスを使用し終えたら、Disposeメソッドをコールし、リソースを解放します。

// switching to passthrough 1 mode using ttOptSetFlag built-in function
string switchModeStmt = "call ttOptSetFlag('passthrough', 1)";
OracleCommand switchCmd = new OracleCommand(switchModeStmt, conn);
switchCmd.CommandType = CommandType.Text;
switchCmd.ExecuteNonQuery();
switchCmd.Dispose();

結果セットを戻す組込みプロシージャについては、ODP.NETを介して結果セットに直接アクセスすることはできません。ただし、PL/SQLから組込みをコールする場合は、OUTパラメータとしてアクセスできます。次に例を示します。

int passThruValue = -1;
OracleCommand cmd = conn.CreateCommand();
cmd.CommandText = "declare v_name varchar2(255); begin execute immediate 
                  'call ttOptGetFlag(''passthrough'')' into v_name, :rc1; end;";
cmd.Parameters.Add("rc1", OracleDbType.Int32, -1, ParameterDirection.Output);
cmd.ExecuteNonQuery();
passThruValue = Convert.ToInt32(cmd.Parameters[0].Value.ToString());
cmd.Parameters.Clear();
cmd.Dispose();

VARCHAR2、NVARCHAR2およびVARBINARYデータ型のサポート

TimesTenのVARCHAR2NVARCHAR2およびVARBINARY型でサポートされるデータは最大4MBです。ODP.NET for TimesTenは、これらのデータ型(およびその他のTimesTen SQLタイプ)の最大サイズの送信をサポートします。


注意:

ODP.NET 12.1をTimesTen環境外で使用する場合、以前のリリースでは文字データのサイズには4KBの制限がありましたが、32KBに増えました。

LOBのサポート

TimesTenのLOBサポートは、OracleDataReaderオブジェクトのInitialLobFetchSizeプロパティのデフォルトの0 (ゼロ)設定に関連付けられたLOBアクセス・メソッドに限定されます。このプロパティが他の値に変更されている場合、TimesTenはこの変更を無視し、その値が0の設定のままであると想定します。

「OracleDataReaderクラスのサポート状況」も参照してください。

既知の問題と制限事項

この項では、リリース時点で判明している制限事項について説明します。

  • 操作に十分なメモリーがないことがわかった場合、文キャッシュの自動チューニングは、それ自体によって無効化されます。アプリケーションがTimesTenに(クライアント/サーバー接続ではなく)直接接続する場合、メモリーにデータベース全体がロードされるため、文キャッシュで使用できるメモリーが減り、これが発生する可能性が高くなることに注意してください。

トラブルシューティング

この項では、発生する可能性のある様々な例外の解決方法を説明します。

  • 例外「ORA-44818: TimesTenデータベースにPL/SQL機能がインストールされていません」

    TimesTenデータベースでPL/SQLが無効になっている場合(デフォルトでは有効です)、ODBC Data Source AdministratorでPLSQL接続属性を1に設定し、有効にします。ODP.NETアプリケーションでは、PL/SQLが無効のTimesTenデータベースには接続できません。

  • 例外: 「TimesTenデータベースのバージョンがバージョンの最小要件である11.2.2.0.0未満です」

    TimesTen 11.2.2データベースを参照するように、tnsname.oraエントリまたは簡易接続文字列のサービス名を変更します。ODP.NET 12.1アプリケーションは、11.2.2より前のバージョンのTimesTenデータベースには接続できません。

  • 例外「ORA-12154: TNS: 指定された接続識別子を解決できませんでした」または「ORA-12541: TNS: リスナーがありません」

    ODP.NETアプリケーションからTimesTenデータベースに接続するには、ODP.NET接続文字列内のData Source属性を、tnsnames.oraファイルのTimesTenエントリのTNS名またはTimesTen簡易接続文字列のいずれかに設定する必要があります。

    接続にtnsnamesネーミング・メソッドを使用する場合、tnsnames.oraファイル内のエントリがTimesTen DSNと関連付けられていることを確認します。また、TNS_ADMIN環境変数がtnsnames.oraファイルが保存されているディレクトリに設定されていることを確認します。

    接続に簡易接続ネーミング・メソッドを使用する場合、service_nameがTimesTen DSNに設定され、serverがDSNによって直接接続されるかクライアント/サーバー接続されるかの構成に応じて、timesten_directまたはtimesten_clientのいずれかに設定されていることを確認します。

  • 例外「ORA-29158: ライブラリをオープンできません。」

    TimesTenデータベースに接続する場合、tnsnames.oraファイルのエントリがTimesTen DSNに関連付けられているか、または簡易接続文字列内のservice_nameがTimesTen DSNに設定されていることを確認します。

    このエラーは、ODP.NETがTimesTen tt_install_dir\binディレクトリ内でTimesTen ODBCドライバを検出できない、パスの問題によっても発生します(次のトラブルシューティング項目も参照してください。)

  • 例外「ORA-29159:ライブラリを読み込めません。」

    前述のORA-29158の手順に加え、tnsnames.oraファイル内のサーバー設定または簡易接続文字列が、TimesTen DSNのタイプに応じてtimesten_directまたはtimesten_clientであることを確認します。

    tnsnames.oraおよび簡易接続については、『Oracle TimesTen In-Memory Database C開発者ガイド』のOCIでのTimesTenデータベースへの接続に関する説明を参照してください。

  • 例外: 「ttcommonxxxx.dllが検出されなかったので、アプリケーションの起動に失敗しました。アプリケーションを再インストールすると問題を解決できる場合があります」

    これは、tt_install_dir\binのTimesTen共有ライブラリの場所がPATH環境変数設定に含まれていないことを示します。


    注意:

    xxxxには、TimesTenのリリース番号が表示されます。TimesTen 11.2.2リリースでは、ファイル名はttcommon1122.dllになります。

ttSrcScanユーティリティ

既存のODP.NETアプリケーションがあり、そのアプリケーションでTimesTenではサポートされていないODP.NET機能が使用されているかどうかを確認する場合は、ttSrcScanコマンドライン・ユーティリティを使用すると、サポートされていない関数、型、型コード、属性、モードおよび定数に関してプログラムをスキャンできます。このユーティリティは、TimesTenまたはOracle Databaseがインストールされていない場合でも実行可能なスタンドアロン・ユーティリティであり、TimesTenでサポートされているどのプラットフォームでも動作します。入力としてソース・コード・ファイルを読み取り、出力としてHTMLおよびテキスト・ファイルを作成します。サポートされていない項目が検出されると、それらの項目はログに記録され、代替が示されます。ttSrcScan実行可能ファイルは、TimesTenのインストール先のquickstart/sample_utilディレクトリにあります。

入力ファイルまたはスキャン対象のプログラムのディレクトリ、およびttSrcScanレポートの出力ディレクトリを指定します。その他のオプションも使用できます。詳細は、sample_utilディレクトリにあるREADMEファイルを参照してください。

TimesTenでのODP.NETネームスペースおよびクラスのサポート状況

この項では、TimesTen環境でサポートされるODP.NETネームスペースおよびクラスに関するリファレンスを示します。

ODP.NETでは、Oracle.DataAccess.ClientおよびOracle.DataAccess.Typesネームスペースのクラス、列挙、インタフェース、デリゲート、構造が実装されます。Oracle.DataAccess.Clientネームスペースには、コアADO.NETクラス、ODP.NET用の列挙、ODP.NET固有のクラスの実装が含まれます。Oracle.DataAccess.Typesネームスペースでは、ODP.NETで使用できるOracle Databaseにネイティブな型のクラス、構造、例外を提供します。次に示すネームスペース以外については、『Oracle Data Provider for .NET開発者ガイド』を参照してください。プログラムから、次のようにそれらにアクセスできる必要があります。

using Oracle.DataAccess.Client;
using Oracle.DataAccess.Types;

次の項では、ODP.NET 12.1リリース用に記述されている、Oracle.DataAccess.ClientおよびOracle.DataAccess.TypesネームスペースのODP.NETクラス、列挙および型に対するTimesTenのサポートについて説明します。


注意:

ODP.NETアプリケーションからTimesTenに接続する場合、アプリケーションでは対応するTimesTenがサポートするODP.NETの機能のみ使用できます。これについては、ここで説明するネームスペースに対するサポートで示しています。

たとえば、TimesTenではサポートしていない、Oracle Streamsアドバンスト・キューイングは使用することはできません。TimesTenでサポートされないODP.NET機能の使用を試行すると、OracleExceptionオブジェクトがスローされます。これらの例外は、対応するTimesTen OCIのエラー・メッセージに基づきます。


Oracle.DataAccess.Clientネームスペースのサポート状況

次の表では、Oracle.DataAccess.Clientネームスペースのデリゲート、クラス、列挙のサポート状況の一覧を示します。

表1 Oracle.DataAccess.Clientネームスペース・デリゲートのサポート状況

デリゲート名 サポートの有無

OnChangeEventHandler

なし

OracleAQMessageAvailableEventHandler

なし

OracleFailoverEventHandler

なし

OracleHAEventHandler

なし

OracleInfoMessageEventHandler

あり

OracleRowsCopiedEventHandler

なし

OracleRowUpdatedEventHandler

あり

OracleRowUpdatingEventHandler

あり


表2 Oracle.DataAccess.Clientネームスペース・クラスのサポート状況

クラス名 サポートの有無 注意

OracleAQAgent

なし


OracleAQDequeueOptions

なし


OracleAQEnqueueOptions

なし


OracleAQMessage

なし


OracleAQMessageAvailableEventArgs

なし


OracleAQQueue

なし


OracleBulkCopy

なし


OracleBulkCopyColumnMapping

なし


OracleBulkCopyColumnMappingCollection

なし


OracleClientFactory

あり


OracleCommand

あり

TimesTenがサポートするこのクラスのプロパティおよびpublicメソッドの詳細は、「OracleCommandクラスのサポート状況」を参照してください。

OracleCommandBuilder

あり


OracleConnection

あり

TimesTenがサポートするこのクラスのプロパティおよびpublicメソッドのサポートの詳細は、「OracleConnectionクラスのサポート状況」を参照してください。

OracleConnectionStringBuilder

あり


OracleDataAdapter

あり

IdentityInsertプロパティおよびIdentityUpdateプロパティはサポートされません。

OracleDatabase

なし


OracleDataReader

あり

TimesTenがサポートするこのクラスのプロパティおよびpublicメソッドの詳細は、「OracleDataReaderクラスのサポート状況」を参照してください。

OracleDataSourceEnumerator

あり


OracleDependency

なし


OracleError

あり


OracleErrorCollection

あり


OracleException

あり


OracleFailoverEventArgs

なし


OracleGlobalization

なし


OracleHAEventArgs

なし


OracleInfoMessageEventArgs

あり


OracleLogicalTransactionStatus

なし


OracleNotificationEventArgs

なし


OracleNotificationRequest

なし


OracleParameter

あり


OracleParameterCollection

あり


OraclePermission

あり


OraclePermissionAttribute

あり


OracleRowsCopiedEventArgs

なし


OracleRowUpdatedEventArgs

あり


OracleRowUpdatingEventArgs

あり


OracleTransaction

あり

TimesTenがサポートするこのクラスのプロパティおよびpublicメソッドの詳細は、「OracleTransactionクラスのサポート状況」を参照してください。

OracleXmlQueryProperties

なし


OracleXmlSaveProperties

なし



表3 Oracle.DataAccess.Clientネームスペース列挙のサポート状況

列挙名 サポートの有無

FailoverEvent

なし

FailoverReturnCode

なし

FailoverType

なし

OracleAQDequeueMode

なし

OracleAQMessageDeliveryMode

なし

OracleAQMessageState

なし

OracleAQMessageType

なし

OracleAQNavigationMode

なし

OracleAQNotificationGroupingType

なし

OracleAQNotificationType

なし

OracleAQVisibilityMode

なし

OracleBulkCopyOptions

なし

OracleCollectionType

なし

OracleDBShutdownMode

なし

OracleDBStartupMode

なし

OracleDbType

あり

OracleHAEventSource

なし

OracleHAEventStatus

なし

OracleIdentityType

なし

OracleNotificationInfo

なし

OracleNotificationSource

なし

OracleNotificationType

なし

OracleParameterStatus

あり

OracleRowidInfo

なし

OracleXmlCommandType

なし


この項の以降の内容は次のとおりです。

OracleCommandクラスのサポート状況

次の表では、OracleCommandクラスのプロパティおよびメソッドのサポート状況の一覧を示します。

表4 OracleCommandクラス・プロパティのサポート状況

プロパティ名 サポートの有無

AddRowid

なし

AddToStatementCache

あり

ArrayBindCount

あり

ArrayBindRowsAffected

なし

BindByName

なし

CommandText

あり

CommandTimeout

なし

CommandType

あり

Connection

あり

DesignTimeVisible

なし

FetchSize

あり

ImpliedRefCursors

あり(「注意」を参照)

InitialLOBFetchSize

なし(「注意」を参照)

InitialLONGFetchSize

なし

Notification

なし

NotificationAutoEnlist

なし

Parameters

あり

RowSize

あり

Transaction

あり

UpdatedRowSource

あり

XmlCommandType

なし

XmlQueryProperties

なし

XmlSaveProperties

なし



注意:

  • TimesTenはImpliedRefCursorsプロパティをサポートしますが、それは、TimesTenでサポートされないADO.NET Entity Frameworkを補完するものとして使用されます。

  • InitialLOBFetchSizeプロパティの使用はODP.NET for TimesTenでサポートされていません。この値を変更しても効果はありません。この値は事実上、常にデフォルト値の0(ゼロ)に設定されます。


表5 OracleCommandクラス・メソッドのサポート状況

メソッド名 サポートの有無

Cancel

なし

Clone

あり

CreateParameter

あり

ExecuteNonQuery

あり

ExecuteReader

あり

ExecuteScalar

あり

ExecuteStream

なし

ExecuteToStream

なし

ExecuteXmlReader

なし


OracleConnectionクラスのサポート状況

次の表では、OracleConnectionクラスのプロパティおよびメソッドのサポート状況の一覧を示します。

表6 OracleConnectionクラス・プロパティのサポート状況

プロパティ名 サポートの有無

ActionName

なし

ClientId

なし

ClientInfo

なし

ConnectionString

あり

ConnectionTimeout

あり

Database

なし

DatabaseDomainName

なし

DatabaseName

なし

DataSource

あり

HostName

なし

InstanceName

なし

IsAvailable (静的プロパティ)

なし

LogicalTransactionID

なし

ModuleName

なし

ServerVersion

あり

ServiceName

なし

State

あり

StatementCacheSize

あり


表7 OracleConnectionクラス・イベントのサポート状況

メソッド名 サポートの有無

Failover

なし

HAEvent

なし

InfoMessage

なし

StateChange

あり


表8 OracleConnectionクラス・メソッドのサポート状況

メソッド名 サポートの有無 注意

BeginTransaction

あり


ChangeDatabase

なし


ClearAllPools (静的メソッド)

あり


ClearPool (静的メソッド)

あり


Clone

あり


Close

あり


CreateCommand

あり


EnlistDistributedTransaction

なし

TimesTenでは、OCIを使用した分散トランザクションがサポートされていません。したがって、ODP.NETアプリケーションではTimesTen接続で分散トランザクションを使用できません。

EnlistTransaction

なし

「EnlistDistributedTransaction」を参照してください。

FlushCache

なし


GetLogicalTransactionStatus

なし


GetSchema

あり

アプリケーション開発者がデータベース情報を検出および列挙するための、表、列、ユーザーおよびその他のオブジェクトのメタデータ・コレクションが戻されます。この情報はTimesTenに固有で、Oracle Databaseより戻される対応するメタデータ・コレクションとは異なる場合があります。たとえば、TimesTenでは、TimesTenではサポートしていないオブジェクト・タイプであるJavaClassesおよびXMLSchemasのメタデータ・コレクションは戻しません。

GetSessionInfo

あり


Open

あり


OpenWithNewPassword

なし


PurgeStatementCache

あり


SetSessionInfo

なし



列挙およびpublic OracleConnectionクラス・プロパティであるOracleConnectionTypeは、特定の接続オブジェクトが、TimesTen接続またはOracle Database接続と関連付けられているか、または物理的な接続がまったくないかを、ODP.NETアプリケーションが判別できるようにするものです。このプロパティには次のシグネチャがあります。

public OracleConnectionType ConnectionType

OracleConnectionType列挙から、次のいずれかの値が戻されます。

OracleConnectionType.Undefined: No connection is associated with the OracleConnection object

OracleConnectionType.Oracle: The OracleConnection object is associated with an Oracle database

OracleConnectionType.TimesTen: The OracleConnection object is associated with a TimesTen database

OracleDataReaderクラスのサポート状況

次の表では、OracleDataReaderクラスのプロパティおよびメソッドのサポート状況の一覧を示します。

表9 OracleDataReaderクラス・プロパティのサポート状況

プロパティ名 サポートの有無

Depth

あり

FetchSize

あり

FieldCount

あり

HasRows

あり

HiddenFieldCount

あり

IsClosed

あり

Item

あり

InitialLOBFetchSize

なし

InitialLONGFetchSize

なし

RecordsAffected

なし

RowSize

あり

VisibleFieldCount

あり



注意:

InitialLOBFetchSizeプロパティの使用はODP.NET for TimesTenでサポートされていません。この値を変更しても効果はありません。この値は事実上、常にデフォルト値の0(ゼロ)に設定されます。

表10 OracleDataReaderクラス・メソッドのサポート状況

メソッド名 サポートの有無

Close

あり

Dispose

あり

GetBoolean

なし

GetByte

あり

GetBytes

あり

GetChar

あり

GetChars

あり

GetData

なし

GetDataTypeName

あり

GetDateTime

あり

GetDecimal

あり

GetDouble

あり

GetEnumerator

なし

GetFieldType

あり

GetFloat

あり

GetGuid

なし

GetInt16

あり

GetInt32

あり

GetInt64

あり

GetName

あり

GetOracleBFile

なし

GetOracleBinary

あり

GetOracleBlob

あり

GetOracleBlobForUpdate

あり

GetOracleClob

あり

GetOracleClobForUpdate

あり

GetOracleDate

あり

GetOracleDecimal

あり

GetOracleIntervalDS

なし

GetOracleIntervalYM

なし

GetOracleRef

なし

GetOracleString

あり

GetOracleTimeStamp

あり

GetOracleTimeStampLTZ

なし

GetOracleTimeStampTZ

なし

GetOracleXmlType

なし

GetOracleValue

あり

GetOracleValues

あり

GetOrdinal

あり

GetProviderSpecificFieldType

あり

GetProviderSpecificValue

あり

GetProviderSpecificValues

あり

GetSchemaTable

あり

GetString

あり

GetTimeSpan

なし

GetValue

あり

GetValues

あり

GetXmlReader

なし

IsDBNull

あり

NextResult

なし

Read

あり


OracleTransactionクラスのサポート状況

次の表では、OracleTransactionクラスのプロパティおよびメソッドのサポート状況の一覧を示します。

表11 OracleTransactionクラス・プロパティのサポート状況

プロパティ名 サポートの有無

IsolationLevel

あり

Connection

あり


表12 OracleTransactionクラス・メソッドのサポート状況

クラス名 サポートの有無 注意

Commit

あり


Dispose

あり


Rollback

あり


Rollback(文字列)

なし

TimesTenでは、トランザクションのセーブポイントはサポートされていません。

Save

なし

TimesTenでは、トランザクションのセーブポイントはサポートされていません。


Oracle.DataAccess.Typesネームスペースのサポート状況

次の表では、Oracle.DataAccess.Typesネームスペースの構造、例外、クラス、インタフェースおよび列挙のサポート状況の一覧を示します。

表13 Oracle.DataAccess.Typesネームスペース構造のサポート状況

構造名 サポートの有無

OracleBinary

あり

OracleBoolean

なし

OracleDate

あり

OracleDecimal

あり

OracleIntervalDS

なし

OracleIntervalYM

なし

OracleString

あり

OracleTimeStamp

あり

OracleTimeStampLTZ

なし

OracleTimeStampTZ

なし


表14 Oracle.DataAccess.Typesネームスペース例外のサポート状況

クラス名 サポートの有無

OracleTypeException

あり

OracleNullValueException

あり

OracleTruncateException

あり


表15 Oracle.DataAccess.Typesネームスペース・クラスのサポート状況

クラス名 サポートの有無

OracleArrayMappingAttribute

なし

OracleBFile

なし

OracleBlob

あり

OracleClob

あり

OracleCustomTypeMappingAttribute

なし

OracleObjectMappingAttribute

なし

OracleRef

なし

OracleRefCursor

あり

OracleUdt

なし

OracleXmlStream

なし

OracleXmlType

なし


表16 Oracle.DataAccess.Typesネームスペース・インタフェースのサポート

インタフェース名 サポートの有無

IOracleArrayTypeFactory

なし

IOracleCustomType

なし

IOracleCustomTypeFactory

なし

INullable

あり


表17 Oracle.DataAccess.Typesネームスペース列挙のサポート状況

列挙名 サポートの有無

OracleUdtFetchOption

なし

OracleUdtStatus

なし


ドキュメントのアクセシビリティについて

Oracleのアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWebサイト(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc)を参照してください。

Oracle Supportへのアクセス

Oracleサポート・サービスでは、My Oracle Supportを通して電子支援サービスを提供しています。詳細情報は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info)か、聴覚に障害のあるお客様は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs)を参照してください。


Oracle Data Provider for .NET Oracle TimesTen In-Memory Databaseサポート・ユーザーズ・ガイド, 12cリリース1 (12.1) for Windows

E48239-03

Copyright © 2013, 2014, Oracle and/or its affiliates.All rights reserved.

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.

このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。