共通のエンタープライズデータアクセス方式
FireDACは、エンタープライズデータベースへの接続性を提供するマルチデバイス対応の共通データアクセスライブラリです。InterBase、SQLite、MySQL、SQL Server、Oracle、PostreSQL、IBM DB2、Informix、SQL Anywhere、MongoDBなどをサポートしています。
FireDACは、データベース固有の機能やパフォーマンスを犠牲にすることなく、複数のデータベースに共通の方式でアクセスできます。FireDACを用いれば、データアクセスを抽象化/単純化でき、高負荷で複雑なデータアクセス処理を、効率的に行うことができます。
FireDACを選択する理由
新規アプリケーション開発者にとって
FireDACは、データベース固有の機能もサポートしており、それぞれのデータベース製品の特長を活かしつつ、共通のアクセス性を提供します。アプリケーション性能を最大限に発揮しつつ、メンテナンス性や拡張性も維持。将来のデータベースプラットフォームの変更や拡張にも対応します。
さらに、増加するクラウドサービス/エンタープライズサービスにも対応。Salesforce、SAP、Kintoneをはじめとする多様なサービスにも、同じ手法でアクセスできることは、大きなメリットです。
マルチプラットフォーム対応、クライアントサイド/サーバーサイドの双方で利用できることも重要。アプリケーション形態やOS環境によらず共通のアクセスが可能であるため、さまざまな要求に対応できます。
既存アプリケーションからの移行でも
FireDACは、BDEなどの旧データアクセスライブラリの移行先としても最適です。TDataSetを継承したクラスは、BDEデータセットやClientDataSetと高い互換性を有しており、移行作業も容易です。
BDEと比較して最も優れている点は、特別なランタイム環境が不要なことです。アプリケーションに静的または動的にリンクされるライブラリとドライバのみで、データアクセス機能を利用できるため、インストールやメンテナンスの負荷を大幅に削減できます。
最新のRDBMS、ビッグデータ、NoSQL、クラウドデータにも対応している点も重要。従来アプリケーションをFireDACへ移行するだけで、多様なデータソースへの拡張や移行が可能になります。
FireDAC - エディション別の機能
FireDACは、Delphi / C++Builder / RAD Studioの各エディションに搭載されています。リモートデータベースを利用する場合には、Enterprise版以上をお求めください。
FireDAC - エディション別の機能 | Professional | Enterprise / Architect |
---|---|---|
ローカル/組み込みデータベース接続をサポート Microsoft Access、SQLite、InterBase ToGo / IBLite, InterBase(ローカルホスト)、 組み込み型MySQL、 MySQLサーバー(ローカルホスト), Advantage Database local engine、PostgreSQL(ローカルホスト)、組み込み型Firebirdおよび Firebird(ローカルホスト)を含むローカルデータベース接続をサポート |
||
ローカル/組み込み/リモートデータベース接続をサポート InterBase、SQLite、MySQL、SQL Server、Oracle、PostgreSQL、DB2、SQL Anywhere、Advantage DB、Firebird、Access、Informix、DataSnapなど、幅広いエンタープライズデータベース、ローカル/組み込みデータベース へのアクセスをサポート |
FireDACの主な機能
データアクセスエンジン
FireDACは、強力なデータアクセスエンジンの上に構築されています。このエンジンは、扱いやすいコンポーネントレイヤーから利用できます。TFDQuery、TFDMemTable、TFDStoredProc、TFDTableなど、TDataSetを継承したクラスは、BDEデータセットやClientDataSetと高い互換性を有しています。最速レベルのインメモリデータセット、ソート、フィルター、計算列など、数多くの機能を利用できます。
共通化されたAPI
FireDACでは、データベースシステム間の違いの抽象化に役立つさまざまな機能を提供しています。DBMSの方言や微妙な違いなどを気にすることなく、容易にコードを記述できます。
- FireDACエスケープシーケンスや条件文、マクロを介してSQL方言を抽象化
- 柔軟かつ修正可能なデータマッピング機能を備えたデータ型の統一化
- 共通のエラーレポート機能 - DBMSに依存しない情報を提供するとともに、特定のドライバのエラーを隠さずに実装
- 共通のトランザクションサポート - 独立した読み込みおよび更新トランザクション。InterBaseおよびFirebird固有のトランザクションサポートによりフル機能にアクセス可能
- ANSIおよび複数のUnicodeエンコーディングをサポート
- ネットワーク接続が不安定な環境でもコネクションを自動的に再確立する自動接続リカバリー
- データベースへの物理接続がない状態でもアプリケーションを動作し続けることが可能な非接続モード
- データベースイベントおよびノーティフィケーションのサポート
- 共通SQLスクリプトのサポート
- 拡張メタデータ検索機能
ハイパフォーマンスデータアクセス
さまざまな手法によってデータベースアクセスは最適化されています。例えば、データベース固有のコンポーネントなどにより、比類ない高速データアクセスを可能にします。
- 大規模なデータセットで高速な双方向ナビゲーションを実現するライブデータウィンドウモード
- ネットワークトラフィックを最小化するDML(Data Manipulation Language)配列によるコマンド実行とコマンドバッチ
- カスタマイズ可能で柔軟な「row set」フェッチ
- 非同期コマンド実行、コマンド実行タイムアウト、コマンド実行キャンセルのダイレクトサポート
- 自動化され、効率的かつ洗練されたUpdateコマンドの生成と実行
- 複数のデータセットへのカスケードアップデートにおける関連する変更を追跡可能なキャッシュアップデート
- ジェネレータやテーブルトリガーをベースとした処理を含むフィールドの自動インクリメントサポート
サポートデータソース
ネイティブドライバサポート |
---|
MySQL、MariaDB、Microsoft SQL Server、Oracle Database、InterBase、PostgreSQL、Informix、SQLite、Sybase SQL Anywhere、Microsoft Access、IBM DB2 Server、Firebird、Advantage Database、MongoDB、generic ODBC driver、Teradata(ODBC)、DataSnap |
モバイルデータベースアクセス |
InterBase ToGo およびIBLite、SQLite |