BDE (Borland Database Engine) (Delphi 1 ~)
http://docwiki.embarcadero.com/RADStudio/ja/BDE_%E3%81%AE%E6%A6%82%E8%A6%81
Borland Database Engine、古くはIDAPI と呼ばれたデータベースアクセスエンジンです。BDE を使用したデータアクセスコンポーネントには、TTable、TQuery などがあります。このアーキテクチャは、元来デスクトップデータベースアクセス用に開発されたもので、Paradox やdBase などのアクセスに利用してきました。Delphi の初期のバージョンで、RDBMS に接続するための技術としても拡張されましたが、リモートデータベースをあたかも手元のデスクトップデータベースのように扱うその手法は、簡単である反面、システムには大きな負荷をかける遠因になることがあります。
DataSnap (MIDAS) (Delphi 3 ~)
http://docwiki.embarcadero.com/RADStudio/ja/DataSnap_%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E9%96%8B%E7%99%BA
DataSnap 技術は、分散コンピューティングの必要性が増すにつれ発展し続けています。 DataSnap を支える技術は、Microsoft COM/DCOM を介したデータ リモーティングのアプローチを超えて、TCP/IP に基づいたよりオープンな通信アプローチに移行しました。 この発展により、DataSnap 技術では、完全なミドルウェア技術を包含するように機能を拡張できました。 この技術を支える主要な特長の 1 つが、速いこと、つまり、ビルドが速い、配置が速い、実稼働時の実行が速いということです。
MyBASE (TClientDataset) (Delphi 3 ~)
http://docwiki.embarcadero.com/Libraries/ja/Datasnap.DBClient.TClientDataSet
TClientDataSet は,メモリ内データセットを表します。クライアントデータセットは次のように使用することができます。
- 単層データベースアプリケーションにおける高機能な独立型ファイルベースデータセット。この場合,クライアントデータセットは,ユーザーのハードディスクにある専用のファイルに格納されたデータを表す。
- 別のデータセットにあるレコードのローカルなメモリ内バッファ。別の(ソース)データセットはクライアントデータセットと同じフォームまたはデータモジュール内に置くことができる(たとえば,クライアントデータセットが,単方向データセットにあるデータをサポートしている場合)。また,クライアントデータセットが,多層データベースアプリケーションのクライアント部分をサポートしている場合は,ソースデータセットを別のシステムに置くこともできる。
※ TClientDataset は DataSnap の一部です。
IBX (InterBase Express) (Delphi 4 ~)
http://docwiki.embarcadero.com/RADStudio/ja/InterBase_Express_%E5%85%A5%E9%96%80
InterBase Express は、InterBase データベースのデータにアクセスするためのデータアクセスコンポーネントのセットです。InterBase Express の各コンポーネントは、InterBaseClient API と直接に相互通信し、データ処理を行います。そのため、配布の際、追加のドライバは必要ありません。
dbGo (ADOExpress) (Delphi 5 ~)
http://docwiki.embarcadero.com/RADStudio/ja/DbGo_%E3%81%AE%E6%A6%82%E8%A6%81
dbGo は、OLE DB プロバイダを介してデータにアクセスするCOM オブジェクトをラップしたコンポーネントです。実際のデータベースへのアクセスは、データベースプロバイダ等から供給されているOLE DB プロバイダまたは ODBC ドライバ、使用される特定のデータベースシステムのクライアントソフトウェアによって行われます。そのため、移行にあたっては、これらのドライバソフトウェアとの関係を確認する必要があります。
DBX (dbExpress) (Delphi 6 ~)
http://docwiki.embarcadero.com/RADStudio/ja/DbExpress_%E3%81%AE%E6%A9%9F%E8%83%BD%E3%81%AE%E6%A6%82%E8%A6%81
BDE が、クライアント環境にエンジンソフトウェアをインストールしなければならないのに対し、dbExpress はより軽量なドライバのみで動作します。クライアント環境のメンテナンス負荷を軽減するとともに、システムに対して余計な負荷をかけないシンプルな設計となっています。一方、従来アプリケーションでは、BDE が提供してきたさまざまな「デスクトップデータベースをエミュレーションする機能」を利用しているケースがあり、これらをそのままdbExpress に持ち込むことは、むしろ性能上の問題を引き起こしかねません。
FireDAC (Delphi XE3 ~)
http://docs.embarcadero.com/products/rad_studio/firedac/frames.html
FireDAC (旧 AnyDAC) は、エンタープライズデータベースにアクセスするマルチデバイス向けアプリケーションを構築するためのユニバーサルデータアクセスコンポーネントです。強力なユニバーサルアーキテクチャにより、FireDACは データベースに高速なネイティブアクセスが可能です。FireDACは、強力かつ使いやすいデータアクセスレイヤーを提供します。これにより、データアクセスを抽象化/単純化でき、現実の高負荷のデータベースアプリケーションの構築を効率的に行うことができるようになります。FireDACでは、データベース固有の機能やパフォーマンスを犠牲にすることなく異なるデータベースにアクセスできる共通APIを提供します。
無償版 AnyDAC である FreeDAC が以下の URL から DL できます。
http://www.da-soft.com/freedac/download.html
※ Delphi 5~2007 へインストールできます。
BDP (Borland Data Provider for the Microsoft .NET Framework) (C# Builder / Delphi for .NET 用)
BDP は、サードパーティ製品を統合するためのインターフェースセットを備えた、オープンなアーキテクチャです。それぞれのデータベース用のインターフェースを実装できるため、設計時、ツール、C#Builder やDelphi に統合されているランタイムに対してデータアクセス機能を提供できます。BDP に管理されたコンポーネントがこれらのインターフェースと対話することで、基本的なデータアクセスが可能になります。これらのインターフェースの実装は、PInvoke(platform Invoke)サービスによってデータベース固有のネイティブクライアントライブラリをラップします。マネージドデータベースクライアントの有用性次第では、完全なマネージドプロバイダをBDP の下位に実装することができます。
See Also:
[既存のDelphi/C++Builder アプリケーションの移行方針 (ホワイトペーパー)]
http://www.embarcadero.com/jp/technical-papers-japanese
[クライアントデータセットでファイルベースのデータを使用する (DocWiki)]
http://docwiki.embarcadero.com/RADStudio/XE3/ja/%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%E3%83%87%E3%83%BC%E3%82%BF%E3%82%BB%E3%83%83%E3%83%88%E3%81%A7%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%83%99%E3%83%BC%E3%82%B9%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B
[FireDAC (製品情報)]
http://www.embarcadero.com/jp/products/rad-studio/firedac
[Borland Data Provider(BDP) for the Microsoft .NET Framework]
http://edn.embarcadero.com/article/33548
|