DB2 Everyplace .NET Data Provider を使用した ADO.NET アプリケーションの開発の概要

DB2 Everyplace .NET Data Provider 用のネーム・スペースは、以下の通りです。

DB2 Everyplace .NET Data Provider は、DB2 Everyplace データ・ソースへの接続、コマンドの実行、および結果の検索についての機能を提供します。 これらの結果は、直接処理するか、または ADO.NET DataSet に入れて、後で切断状態の間に処理することができます。DataSet に入っている間は、データをユーザーに公開するか、複数のソースからの他のデータと組み合わせるか、または層の間でリモートでの受け渡しを行うことができます。したがって、DataSet に入っている間にデータに対して実行されるすべての処理は、データ・ソースと調整できます。

DB2 Everyplace .NET Data Provider は、軽量化するように設計されています。DB2 Everyplace とユーザー・コードの間は最小限の層で構成されており、パフォーマンスを犠牲にせずに機能を拡張できます。

DB2 Everyplace .NET Data Provider クラスは、他の .NET Framework クラス やインターフェースからのメンバーを継承またはインプリメントします。この プロバイダー・ドキュメンテーションには、これらのクラスのそれぞれに含まれるサポート・メンバーのサマリーが含まれています。 特定の継承メンバーに関する詳細については、Microsoft(R) .NET Framework SDK の該当するトピックを 参照してください。

前提条件

表 6. DB2 Everyplace

.NET Data Provider を使用する場合の前提条件
コンポーネント 最小必要要件
Microsoft.NET Framework

Microsoft.NET Framework 1.0

アプリケーション開発用の DB2 Everyplace .NET Data Provider をインストールする前に、インストールされている必要があります。

Microsoft Visual Studio.NET 2003 モバイル・アプリケーション開発用の Microsoft Visual Studio.NET 2003
Microsoft.NET Compact Framework

モバイル開発用の Microsoft .NET Compact Framework 1.0

モバイル開発用の DB2 Everyplace .NET Data Provider をインストールする前に、デバイスにインストールされている必要があります。

DB2 Everyplace 製品
  • バージョン 8.1.4 以降の DB2e.dll
  • バージョン 8.1.4 以降の
    AgentProxy.dll
    
    (リモート・ストアード・プロシージャー呼び出し用に必要)
  • バージョン 8.1.4 以降の wbxmllib.dll (リモート・ストアード・プロシージャー呼び出し用に必要)
  • DB2 Everyplace 同期サーバー ・バージョン 8.1.4 以降 (リモート・ストアード・プロシージャー呼び出し用に必要)

DB2e.dllAgentProxy.dll、および wbxmllib.dll はネイティブ・ライブラリーであるため、プロセッサーに依存します。 そのため、オペレーティング・システムでは、DB2 Everyplace .NET Data Provider を適切に 機能させるために、これらのネイティブ・ライブラリーの位置を (例えば、環境変数 PATH を設定して) 指定する必要があります。

制約事項

プロバイダーの制限

スレッド・セーフティー

このプロバイダーの共通非インスタンス・メンバーは、マルチスレッド操作に対してスレッド・セーフです。インスタンス・メンバーのスレッド・セーフは保証されていません。

手順

DB2 Everyplace .NET データ・プロバイダーを構成するコア・オブジェクトが 4 つあります。 以下の表に、これらのオブジェクトとその機能を示します。

表 7. DB2 Everyplace .NET Data Provider、コア・オブジェクト

オブジェクト 説明
DB2eConnection DB2 Everyplace データ・ソースへの接続を確立し、トランザクション を開始できる。
DB2eCommand DB2 Everyplace サーバーでコマンドを実行し、パラメーター を公開する。
DB2eDataAdapter DataSet にデータを追加し、DB2 Everyplace データ・ソースで更新を解決する。
DB2eDataReader DB2 Everyplace データ・ソースからのデータの順方向のみのストリームを公開し、読み取る。

DB2 .NET Data Provider には、前述の表にリストされたコア・クラスに加えて、 以下の表にリストされているクラスも含まれています。

表 8. DB2 Everyplace .NET Data Provider、追加クラス

オブジェクト 説明
DB2eCommandBuilder ADB2eDataAdapter のコマンド・プロパティーを自動的に生成したり、または ストアード・プロシージャーからパラメーターを取得して DB2eCommand オブジェクトの DB2eParameters コレクションのデータを追加するヘルパー・オブジェクト。注: DB2eCommandBuilder を使用することは、非効率な SQL ステートメントや、場合によっては無効な SQL ステートメントを 生成する可能性があるため、お勧めできません。
DB2eError DB2 Everyplace データ・ソースから戻された警告やエラーの情報を公開する。
DB2eException DB2 Everyplace データ・ソースでエラーが見つかると戻される。クライアントで見つかったエラーの 場合、.NET Data Provider が .NET Framework 例外をスローする。
DB2eParameter コマンドおよびストアード・プロシージャー用の入力、出力、および戻り値のパラメーターを定義する。
DB2eTransaction DB2 Everyplace データ・ソースにおけるトランザクションにコマンドを入れられるようにする。

DB2 Everyplace .NET Data Provider を使用するには、以下のコードが示すように、IBM.Data.DB2.DB2e、つまりネーム・スペースに対する imports ステートメントまたは using ステートメントをアプリケーション .DLL に追加する必要があります。

[Visual Basic]
Imports IBM.Data.DB2.DB2e

[C#]
using IBM.Data.DB2.DB2e;

また、コードをコンパイルする際に .DLL への参照を追加する必要があります。 例えば、Microsoft(R) Visual C#(TM) プログラムをコンパイルしている場合、コマンド行には 次の行を追加しなければなりません。

csc /r:IBM.Data.DB2.DB2e.dll

.NET Compact Framework の場合、ネーム・スペースは IBM.Data.DB2.DB2e.CF であり、アプリケーションは IBM.Data.DB2.DB2e.CF.dll アセンブリーを参照する必要があります。

このネーム・スペースをうまく使用する方法については、以下の DB2 Everyplace.NET Data Provider クラスの資料を参照してください。

.NET Framework 内で DB2 Everyplace .NET Data Provider がどのように機能するかに ついての詳細は、IBM.Data.DB2.DB2e 階層を参照してください。

表 9. クラス

オブジェクト 説明
DB2eCommand データ・ソースに対して実行する SQL ステートメントまたはストアード・プロシージャーを表す。このクラスは継承できない。
DB2eCommandBuilder 関連するデータ・ソースを持つ DataSet に対して行われた変更を調整するのに使用する 単一表コマンドを自動的に生成する。このクラスは継承できない。
DB2eConnection データ・ソースへのオープン接続を表す。
DB2eDataAdapter DataSet を充てんしデータ・ソースを更新するのに使用する、データ・コマンドのセットおよびデータ・ソースへの接続を表す。このクラスは継承できない。
DB2eDataReader データ・ソースからのデータ行の順方向のみのストリームを読み取る方法を提供する。このクラスは継承できない。
DB2eError データ・ソースから戻された警告またはエラーに関する情報を収集する。このクラスは継承できない。
DB2eException DB2 Everyplace データ・ソースから警告またはエラーが戻される場合に生成される例外。このクラスは継承できない。
DB2eParameter DB2eCommand へのパラメーターと、オプションで DataColumn へのマッピングを表す。このクラスは継承できない。
DB2eTransaction データ・ソースで作成される SQL トランザクションを表す。このクラスは継承できない。

表 10. 代行

代行 説明
DB2eInfoMessageEventHandler DB2eConnection の InfoMessage イベントを処理するメソッドを表す。
DB2eRowUpdatedEventHandler DB2eDataAdapter の RowUpdated イベントを処理するメソッドを表す。
DB2eRowUpdatingEventHandler DB2eDataAdapter の RowUpdating イベントを処理するメソッドを表す。

表 11. 列挙型

列挙型 説明
DB2eType フィールド、プロパティー、または DB2eParameter のデータ・タイプを指定する。

表 12. DB2 Everyplace .NET Provider 接続ストリング・キーワード

キーワード 説明
Database データベースの場所。例えば、C:¥data1¥
UID ユーザー ID
PWD パスワード

C# の例

string connString = @"Database=C:¥data1¥; UID=user; PWD=userpwd";

関連した概念

関連したタスク