Direct Access Components の使用方法
Embarcadero データベース エンジンに置き換わる PSQL エンジンの使用に関する情報
以下のトピックでは、Delphi および C++ Builder で使用する PSQL Direct Access Components について説明します。
PSQL Direct Access Components の概要
PSQL Direct Access Components(PDAC)は、Embarcadero Delphi と C++ Builder 環境内で PSQL データベース エンジンに直接アクセスできるようにする、一連の Visual Component Library(VCL)コンポーネントです。これらのコンポーネントは、Borland Database Engine(BDE)のすべての機能を提供しながら、BDE の完全な代替品として動作します。PDAC により、Delphi と C++ Builder 開発者にとってはデータベース開発の選択肢が格段に増えます。
PSQL Direct Access Components でサポートされる開発環境については PDAC の Readme ファイルをお読みください。
PDAC のすべてのバージョンには、次の非ビジュアル コンポーネントが含まれています。
•TPvSession
•TPvDatabase
•TPvTable
•TPvBatchMove
•TPvQuery
•TPvStoredProc
•TPvUpdateSQL
•TPvSqlDatabase
これらのコンポーネントのサポート クラスも提供されています。
これら 32 ビット コンポーネントは、Embarcadero の Data Access Components のプロパティ、メソッド、およびバインド機能を再現しますが、実行時に Borland Database Engine(BDE)が存在している必要はありません。
これらのコンポーネントはパッケージ形式で提供され、組み込みコントロールの設計時および実行時に必要なすべての機能を提供します。これらは BDE コンポーネントと同様の方法で Embarcadero データ アウェア コントロールにバインドします。また、完全に互換性のある、サード パーティのバウンド コントロールにもバインドします。
Woll2Woll InfoPower コンポーネントとの相互運用性のための特別なコンポーネント(wwPvTable、wwPvQuery および wwPvStoredProc)が装備されています。
エンジンのバージョンのチェック
PDAC では、クエリまたはテーブルを開いたときに PSQL エンジンのバージョンが適切かどうかをチェックしてエンジンのバージョン依存に伴うエラーが発生するのを完全に防ぐことができます。エンジンのバージョンが適切でない場合は例外が発生し、必要なバージョンを示すメッセージが表示されます。
TPvQuery.PassThrough
SQL テキストを事前解析しないで、エンジンへ直接送ることができます。
TPvDatabase.OEMConversion
このプロパティは、データベースに格納されている文字は OEM(DOS)コード ページによってエンコードされているため、データベースを使用する前にこれらの文字を ANSI(Windows)コード ページに変換する必要があることを示します。
詳細情報を入手するには
PSQL Direct Access Components の使用法
PDAC コンポーネントは、アーカイブからそのコンポーネントを解凍することで任意のディレクトリ(installdir)にインストールします。PDAC コンポーネントが解凍されたら、システム上の Delphi または C++ Builder IDE がその コンポーネントの場所を確実に認識できるようにする必要があります。
C++ Builder のプロジェクト オプションに、PDAC のためのインクルード パスとライブラリ パスを反映させるためには以下の手順に従います。これらはデフォルトのオプションとして追加することができます。そのため、PSQL コンポーネントを使用しているすべてのプロジェクトに必要というわけではありません。
►C++ Builder のインクルード パスとライブラリ パスに PSQL Direct Access Components を追加するには、次の手順に従います。
1 [プロジェクト|オプション]をクリックして、[ディレクトリ/条件]タブをクリックします。
2 [インクルード パス]に installdir\sdk\pdac\Delphi?\include を追加します。ここで、installdir は PDAC をインストールしたディレクトリを示します。疑問符(?)は使用している RAD Studio のバージョンに置き換えます。
3 さらに[ライブラリ パス]に、installdir\sdk\pdac\Delphi?\lib と、installdir\sdk\pdac\Delphi?\lib\dcu をセミコロン(;)で区切って追加します。疑問符(?)は使用している RAD Studio のバージョンに置き換えます。
インクルード パスとライブラリ パスを正しく設定すると、Direct Access Components を対応する Embarcadero コンポーネントとまったく同様に使用できるようになります。
Delphi 2006、Delphi 2007、および C++ Builder 2007
PSQL は Delphi 2006、Delphi 2007、および C++ Builder 2007 のサポートを提供します。お使いの環境に Delphi 2006、Delphi 2007、または C++ Builder 2007 を組み入れるには、以下の手順を使用します。
►Delphi 2006、Delphi 2007、または C++ Builder 2007 パッケージとパス情報をお使いの環境に追加するには
1 [コンポーネント|パッケージのインストール|追加]をクリックします。
2 設計時パッケージを選択します。
3 Delphi compiled units(DCU)とインターフェイス ファイル(INT)にパスを追加します。
Delphi 2007 および C++ Builder 2007 は Delphi 2006(BDS 2006)とバイナリ互換なので、既存の Embarcadero package libraries(BPL)はすべて変更なしで動作します。Delphi 2007 および C++ Builder 2007 ではコンパイラ変数 VERSION_180 と VERSION_185 を宣言することに注意してください。
RAD Studio
次に示す RAD Studio のエディションで、コンポーネントをコンパイラー IDE に追加するには、下記の手順に従ってください。
•RAD Studio 2009
•RAD Studio 2010
•RAD Studio XE
•RAD Studio XE2(32 ビットのみ)
•RAD Studio XE3
•RAD Studio XE4
•RAD Studio XE5
•RAD Studio XE6
•RAD Studio XE7
•RAD Studio XE8
•RAD Studio 10
►RAD Studio パッケージとパス情報をお使いの環境に追加するには
1 [コンポーネント|パッケージのインストール|追加]をクリックします。
2 以下の PDAC 設計時コンポーネントを参照し、必要なコンポーネントを選択します。これらは設計時パッケージであることに留意してください。実行時については、
PDAC に基づくアプリケーションの配布を参照してください。
RAD Studio 2009 コンポーネント
•pc200d2009.bpl
•pb200d2009.bpl
•ps200d2009.bpl
RAD Studio 2010 コンポーネント
•pc200d2010.bpl
•pb200d2010.bpl
•ps200d2010.bpl
RAD Studio XE コンポーネント
•pc200dXE.bpl
•pb200dXE.bpl
•ps200dXE.bpl
RAD Studio XE2 コンポーネント(IDE は 32 ビットのみサポート)
•pc200dXE2.bpl
•pb200dXE2.bpl
•ps200dXE2.bpl
RAD Studio XE3 コンポーネント(IDE は 32 ビットのみサポート)
•pc200dXE3.bpl
•pb200dXE3.bpl
•ps200dXE3.bpl
RAD Studio XE4 コンポーネント(IDE は 32 ビットのみサポート)
•pc200dXE4.bpl
•pb200dXE4.bpl
•ps200dXE4.bpl
RAD Studio XE5 コンポーネント(IDE は 32 ビットのみサポート)
•pc200dXE5.bpl
•pb200dXE5.bpl
•ps200dXE5.bpl
RAD Studio XE6 コンポーネント(IDE は 32 ビットのみサポート)
•pc200dXE6.bpl
•pb200dXE6.bpl
•ps200dXE6.bpl
RAD Studio XE7 コンポーネント(IDE は 32 ビットのみサポート)
•pc200dXE7.bpl
•pb200dXE7.bpl
•ps200dXE7.bpl
RAD Studio XE8 コンポーネント(IDE は 32 ビットのみサポート)
•pc200dXE8.bpl
•pb200dXE8.bpl
•ps200dXE8.bpl
RAD Studio 10 コンポーネント(IDE は 32 ビットのみサポート)
•pc200d10.bpl
•pb200d10.bpl
•ps200d10.bpl
お使いの環境に合ったコンポーネントを選択すると、VCL プロジェクトに PSQL が表示されるようになります。これで、PvTable または PvQuery を追加して、PDAC を使用するアプリケーションを構築することが可能になりました。
PDAC に基づくアプリケーションの配布
Embarcadero などのランタイム ライブラリについてはいくつかのバリエーションがありますが、エンド ユーザーに配布する PDAC アプリケーションの基本的な構築方法は 2 つです。1 つは実行時パッケージを使用する方法で、もう 1 つはアプリケーションの実行可能ファイルに PDAC ライブラリを静的にリンクする方法です。また、C++ Builder では Embarcadero ランタイム ライブラリの動的または静的リンク オプションも提供します。
メモ: SDK で提供される drm.dll ファイル(PSQL のインストール後、BIN ディレクトリに置かれます)は、配布するすべての環境設定のパスに配置する必要があります。また、PDAC アプリケーションを実行するターゲット コンピューターには PSQL クライアントまたは PSQL エンジン(サーバーまたはワークグループ)が正しくインストールされていなければなりません。
実行時パッケージの使用の決定
実行時パッケージを使用する場合はいくつかの利点があります。最小の実行可能ファイルを提供することができます。これは、リンクの遅い環境で実行可能ファイルまたは更新のダウンロードや転送を行う必要がある場合には重要になります。このオプションを使用すれば、PDAC および Embarcadero のランタイム バイナリを共有することができ、多くの Embarcadero および PDAC アプリケーションを使用する環境内のディスク容量やメモリを大幅に節約することができます。
欠点は、より多くのファイルを配布し、それらを最新のものにしておく必要があること、またその共有ファイルは、共有サブディレクトリにサード パーティ製の不正なバージョンの共有ファイルがインストールされることによって影響を受ける恐れがあることです。実行時パッケージを使用しない場合は、アプリケーションと drm.dll のみを配布する必要があります。PDAC ライブラリは実行可能ファイルに静的にリンクされるため、それに伴ってサイズは大きくなります。
実行時パッケージを使用する場合、開発者はアプリケーションの実行可能ファイルおよび適切な PDAC ライブラリ(PDAC インストール ディレクトリの redist サブディレクトリ内)の両方と、Embarcadero ランタイム ライブラリまたはその他のランタイム ライブラリ(コンパイラの bin ディレクトリにある borlndmm.dll が必要になることが多い)をエンド ユーザーに配布する必要があります。
Redist サブディレクトリ
Embarcadero コンパイラごとに redist ディレクトリがあります。このディレクトリには、.bpl ライブラリが含まれており、これらのライブラリは[実行時パッケージを使って構築]オプションを使ってコンパイルされたアプリケーションと一緒に配布する必要があります。
メモ: 各 redist ディレクトリには .dcp または .bcp ファイルも含まれています。これらのファイルは、派生クラスを使用した開発が許可されるライセンスを持つ組織以外には再配布されません。.dpl パッケージと .bpl パッケージのみをアプリケーションと一緒に配布することができます。
IDS の配布
PDAC アプリケーションは I*net Data Server(IDS)で使用することはできません。IDS は、PSQL と別個にインストールできるコンポーネントではなくなりました。IDS の一部であった機能のほとんどは製品に統合されました。
Delphi または C++ Builder の構築と配布手順
ここでは、次に示すバージョンで構築と配布を行う手順を示します。
•Delphi 2006
•C++ Builder 2007
•Delphi 2007
•RAD Studio 2009
•RAD Studio 2010
•RAD Studio XE
•RAD Studio XE2(32 ビット)
•RAD Studio XE3(32 および 64 ビット)
•RAD Studio XE4(32 および 64 ビット)
•RAD Studio XE5(32 および 64 ビット)
•RAD Studio XE6(32 および 64 ビット)
•RAD Studio XE7(32 および 64 ビット)
•RAD Studio XE8(32 および 64 ビット)
•RAD Studio 10(32 および 64 ビット)
Delphi IDE で以下のように適切なオプションを設定します。
1 [プロジェクト]メニューから[オプション]を選択します。
2 [パッケージ]タブをクリックします。
実行時にアプリケーションと PDAC ライブラリとを動的にリンクさせるには、[実行時パッケージを使って構築]のチェックをオンにし、次の表に示す適切な PDAC パッケージを編集ボックスのリストへ追加します。
メモ: インストール時に PDAC パッケージが構築リストに追加されていた場合は、上記の手順は必要ありません。
次の表は、Delphi のバージョンによって、MicroKernel エンジンに必要となる実行時パッケージ(.blp ファイル)の一覧を示します。
表 1 MicroKernel エンジン コンポーネントに必要な実行時パッケージ
Delphi バージョン | 必要な実行時パッケージ1 |
Delphi 2006 および Delphi 2007 | pc200d2006 および pb200d2006 |
RAD Studio 2009 | pc200r2009 および pb200r2009 |
RAD Studio 2010 | pc200r2010 および pb200r2010 |
RAD Studio XE | pc200rXE および pb200rXE |
RAD Studio XE2(32 ビット) | pc200rXE2 および pb200rXE2 |
RAD Studio XE3(32 ビット)2 | pc200rXE3 および pb200rXE3 |
RAD Studio XE3(64 ビット)2 | w64pc200rXE3 および w64pb200rXE3 |
RAD Studio XE4(32 ビット)2 | pc200rXE4 および pb200rXE4 |
RAD Studio XE4(64 ビット)2 | w64pc200rXE4 および w64pb200rXE4 |
RAD Studio XE5(32 ビット)2 | pc200rXE5 および pb200rXE5 |
RAD Studio XE5(64 ビット)2 | w64pc200rXE5 および w64pb200rXE5 |
RAD Studio XE6(32 ビット)2 | pc200rXE6 および pb200rXE6 |
RAD Studio XE6(64 ビット)2 | w64pc200rXE6 および w64pb200rXE6 |
RAD Studio XE7(32 ビット)2 | pc200rXE7 および pb200rXE7 |
RAD Studio XE7(64 ビット)2 | w64pc200rXE7 および w64pb200rXE7 |
RAD Studio XE8(32 ビット)2 | pc200rXE8 および pb200rXE8 |
RAD Studio XE8(64 ビット)2 | w64pc200rXE8 および w64pb200rXE8 |
RAD Studio 10(32 ビット)2 | pc200r10 および pb200r10 |
RAD Studio 10(64 ビット)2 | w64pc200r10 および w64pb200r10 |
1 Btrieve コンポーネントには TPvSession、TPvDatabase、TPvTable、TPvBatchMove、および TwwPvTable が含まれています。 MicroKernel エンジン コンポーネントを参照してください。 2 PSQL v12 SP1 の最新のアップデートが必要です。 |
次の表は、Delphi のバージョンによって、リレーショナル エンジンに必要となる実行時パッケージ(.bpl ファイル)の一覧を示します。
表 2 リレーショナル エンジン コンポーネントに必要な実行時パッケージ
Delphi バージョン | 必要な実行時パッケージ1 |
Delphi 2006 および Delphi 2007 | pc200d2006 および ps200d2006 |
RAD Studio 2009 | pc200r2009 および ps200r2009 |
RAD Studio 2010 | pc200r2010 および ps200r2010 |
RAD Studio XE | pc200rXE および ps200rXE |
RAD Studio XE2(32 ビット) | pc200rXE2 および ps200rXE2 |
RAD Studio XE3(32 ビット)2 | pc200rXE3 および ps200rXE3 |
RAD Studio XE3(64 ビット)2 | w64pc200rXE3 および w64ps200rXE3 |
RAD Studio XE4(32 ビット)2 | pc200rXE4 および ps200rXE4 |
RAD Studio XE4(64 ビット)2 | w64pc200rXE4 および w64ps200rXE4 |
RAD Studio XE5(32 ビット)2 | pc200rXE5 および ps200rXE5 |
RAD Studio XE5(64 ビット)2 | w64pc200rXE5 および w64ps200rXE5 |
RAD Studio XE6(32 ビット)2 | pc200rXE6 および ps200rXE6 |
RAD Studio XE6(64 ビット)2 | w64pc200rXE6 および w64ps200rXE6 |
RAD Studio XE7(32 ビット)2 | pc200rXE7 および ps200rXE7 |
RAD Studio XE7(64 ビット)2 | w64pc200rXE7 および w64ps200rXE7 |
RAD Studio XE8(32 ビット)2 | pc200rXE8 および ps200rXE8 |
RAD Studio XE8(64 ビット)2 | w64pc200rXE8 および w64ps200rXE8 |
RAD Studio 10(32 ビット)2 | pc200r10 および ps200r10 |
RAD Studio 10(64 ビット)2 | w64pc200r10 および w64ps200r10 |
1 リレーショナル コンポーネントには TPvSQLSession、TPvSQLDatabase、TPvQuery、TPvUpdateSQL、TPvSQLStoredProc、TwwPvQuery、および TwwPvSQLStoredProc が含まれています。 リレーショナル エンジン コンポーネントを参照してください。 2 PSQL v12 SP1 に更新するための最新のアップデートが必要です。 |
パッケージを選択するには、[コンポーネント|インストール]の順にクリックし、ご使用の Delphi のバージョンに一致するディレクトリからパッケージを選択します。一度にすべてのパッケージを選択することができます。
Delphi バージョン | ディレクトリ(デフォルトのインストール先) |
Delphi 2006 Delphi 2007 | \SDK\PDAC\PDAC\Delphi2006\LIB |
RAD Studio 2009 | \SDK\PDAC\Delphi2009\LIB |
RAD Studio 2010 | \SDK\PDAC\Delphi2010\LIB |
RAD Studio XE | \SDK\PDAC\DelphiXE\LIB |
RAD Studio XE2(32 ビット) | \SDK\PDAC\DelphiXE2\LIB |
RAD Studio XE3(32 ビット) | \SDK\PDAC\DelphiXE3\x86\LIB |
RAD Studio XE3(64 ビット) | \SDK\PDAC\DelphiXE3\x64\LIB |
RAD Studio XE4(32 ビット) | \SDK\PDAC\DelphiXE4\x86\LIB |
RAD Studio XE4(64 ビット) | \SDK\PDAC\DelphiXE4\x64\LIB |
RAD Studio XE5(32 ビット) | \SDK\PDAC\DelphiXE5\x86\LIB |
RAD Studio XE5(64 ビット) | \SDK\PDAC\DelphiXE5\x64\LIB |
RAD Studio XE6(32 ビット) | \SDK\PDAC\DelphiXE6\x86\LIB |
RAD Studio XE6(64 ビット) | \SDK\PDAC\DelphiXE6\x64\LIB |
RAD Studio XE7(32 ビット) | \SDK\PDAC\DelphiXE7\x86\LIB |
RAD Studio XE7(64 ビット) | \SDK\PDAC\DelphiXE7\x64\LIB |
RAD Studio XE8(32 ビット) | \SDK\PDAC\DelphiXE8\x86\LIB |
RAD Studio XE8(64 ビット) | \SDK\PDAC\DelphiXE8\x64\LIB |
RAD Studio 10(32 ビット) | \SDK\PDAC\Delphi10\x86\LIB |
RAD Studio 10(64 ビット) | \SDK\PDAC\Delphi10\x64\LIB |
メモ: PDAC パッケージをリストに追加しない場合、これらは実行可能ファイルにコンパイルされ、[実行時パッケージを使って構築]のチェックがオンになっていても共有ライブラリは使用されません。
PDAC ライブラリをアプリケーションの実行可能ファイルに静的にリンクさせるには、[実行時パッケージを使って構築]のチェックをオフにしておきます。
コンパイル時、[実行時パッケージを使って構築]のチェックをオンにしていた場合は、アプリケーションを配布するときに、アプリケーションそのもの、drm.dll およびその他のパッケージまたは 必要な DLL と共に以下に示すパッケージ ライブラリも配布する必要があります。
Delphi 2006/Delphi 2007 パッケージ構築リスト
これらのライブラリは、\SDK\PDAC\PDAC\Delphi2006\REDIST にあり、それぞれ個別の .dcp ファイルが含まれています。
pc200d2006.bpl
pb200d2006.bpl
ps200d2006.bpl
RAD Studio 2009 パッケージ構築リスト
pc200r2009.bpl
pb200r2009.bpl
ps200r2009.bpl
RAD Studio 2010 パッケージ構築リスト
pc200r2010.bpl
pb200r2010.bpl
ps200r2010.bpl
RAD Studio XE パッケージ構築リスト
pc200rXE.bpl
pb200rXE.bpl
ps200rXE.bpl
RAD Studio XE2(32 ビット) パッケージ構築リスト
pc200rXE2.bpl
pb200rXE2.bpl
ps200rXE2.bpl
RAD Studio XE3(32 ビット) パッケージ構築リスト
pc200rXE3.bpl
pb200rXE3.bpl
ps200rXE3.bpl
RAD Studio XE3(64 ビット) パッケージ構築リスト
w64pc200rXE3.bpl
w64pb200rXE3.bpl
w64ps200rXE3.bpl
RAD Studio XE4(32 ビット) パッケージ構築リスト
pc200rXE4.bpl
pb200rXE4.bpl
ps200rXE4.bpl
RAD Studio XE4(64 ビット) パッケージ構築リスト
w64pc200rXE4.bpl
w64pb200rXE4.bpl
w64ps200rXE4.bpl
RAD Studio XE5(32 ビット) パッケージ構築リスト
pc200rXE5.bpl
pb200rXE5.bpl
ps200rXE5.bpl
RAD Studio XE5(64 ビット) パッケージ構築リスト
w64pc200rXE5.bpl
w64pb200rXE5.bpl
w64ps200rXE5.bpl
RAD Studio XE6(32 ビット) パッケージ構築リスト
pc200rXE6.bpl
pb200rXE6.bpl
ps200rXE6.bpl
RAD Studio XE6(64 ビット) パッケージ構築リスト
w64pc200rXE6.bpl
w64pb200rXE6.bpl
w64ps200rXE6.bpl
RAD Studio XE7(32 ビット) パッケージ構築リスト
pc200rXE7.bpl
pb200rXE7.bpl
ps200rXE7.bpl
RAD Studio XE7(64 ビット) パッケージ構築リスト
w64pc200rXE7.bpl
w64pb200rXE7.bpl
w64ps200rXE7.bpl
RAD Studio XE8(32 ビット) パッケージ構築リスト
pc200rXE8.bpl
pc200rXE8.bpl
ps200rXE8.bpl
RAD Studio XE8(64 ビット) パッケージ構築リスト
w64pc200rXE8.bpl
w64pb200rXE8.bpl
w64ps200rXE8.bpl
RAD Studio 10(32 ビット) パッケージ構築リスト
pc200r10.bpl
pb200r10.bpl
ps200r10.bpl
RAD Studio 10(64 ビット) パッケージ構築リスト
w64pc200r10.bpl
w64pb200r10.bpl
w64ps200r10.bpl
これらのファイルは、アプリケーションの実行可能ファイルと同じサブディレクトリにインストールすることができますが、ターゲット コンピューターのパスに置くことをお勧めします。そうすれば、これらのファイルをほかのアプリケーションでも共有することができます。PSQL インストール場所の \bin ディレクトリが PSQL 実行モジュールの主ディレクトリである場合は、このディレクトリを使用するのが適切です。
さらに、Delphi の PDAC アプリケーションでは、PSQL エンジン(サーバーまたはワークグループ)または PSQL クライアントのいずれかと、適切にインストールされ設定されているリモート サーバーが必要です。
Delphi 6 より更新されたパッケージ名
Delphi 6 以降、弊社では Embarcadero 標準との互換性をより強化するようパッケージの名前付け規則を変更しました。また、Embarcadero 要件を満たすために、実行時パッケージを設定時パッケージから分けました。
旧バージョンの Delphi と PDAC から移行する場合の、実行時パッケージ名の解釈方法を以下に示します。
pc200r60.bpl
pb200r60.bpl
ps200r60.bpl
ファイル名の桁位置 | 可能な値 | 説明 |
1 | p | PSQL |
2 | c、b または s | Common、Btrieve または SQL |
3-5 | リリースによって異なる | PDAC コンポーネントのメジャーおよびマイナー バージョン |
6 | r、d | 実行時または設計時 |
7-9 | リリースによって異なる | これらのコンポーネントを適用する Delphi バージョン |
メモ: Delphi 6 で作業する場合、InfoPower 機能はメイン パッケージに結合されています。InfoPower 機能の Woll2Woll コンポーネント用のパッケージは独立していません。