現在、RAD Studio データベース アクセスの主な焦点は、FireDAC ユニバーサル データベース アクセス ライブラリにあります。過去には Delphi と C++Builder にも他のデータベース エンジンが含まれていたこと、また現在でもいくつかの代替オプションが含まれていることを考慮して、Embarcadero は他のデータベース アクセス ライブラリから FireDAC への移行を簡素化するスクリプトとヘルパー ユニットを作成してきました。
Table of Contents
ReFindツール
移行に使用しているツールはReFind(Regular Expression Find and Replaceの略)と呼ばれ、以前から利用可能でした。このツールのドキュメントは以下でご覧いただけます。
Perl RegEx 式を使用する検索および置換ユーティリティ: reFind.exe
このツールは、AnyDAC (FireDAC の前身ライブラリ) からの移行から始まり、その後 BDE、その後 dbExpress および dbGo (ADO 用) からの移行が続き、現在は RAD Studio に同梱されている InterBase 固有のデータ アクセス ライブラリである InterBase Express からの移行を提供しています。
各スクリプトは、適用されるルールのコレクションです。たとえば、Pas ファイル内のすべての「TQuery」を「TFDQuery」に置き換えるには、次のようになります。
[crayon-67f072173c9f7482896102/]
ツールは製品に同梱されていますが、移行スクリプト (変換するプロジェクトのコーディング スタイルに合わせてカスタマイズおよび調整できます) は、デモ フォルダーと GitHub で入手できます。
スクリプトは多くの変換作業を実行しますが、追加のクラスによって拡張され、名前とパラメータの違いに対処し、元の API と新しい API の間の「ファサード」として機能することに注意してください。
InterBase Express (IBX) 用 ReFind
12.3 の新機能は、InterBase Express から FireDAC への新しい移行スクリプトです。InterBase Express (または IBX) ライブラリについては、次の docwiki で読むことができます。
これは現在も製品に残っているライブラリですが、FireDAC への移行パスを提供することで、FireDAC が提供する多くの高度な機能を活用できるようになります。
この移行ツールの使用方法
- まず、IBXがインストールされていることを確認してください。IBXは、機能の管理ダイアログボックスのオプション機能です。
- 次に、binのFireDACIBXIntegrate290.bpl で利用可能な特別な互換性パッケージをインストールします。これにより、TFDIBDatabase および TFDIBDataSet コンポーネントが登録されます。
- 3番目に、上記のdemoフォルダのreFindとサブフォルダIBX2FDMigrationからスクリプトファイルを使用します。
- 4 番目 (数回繰り返します) は、取得した出力に応じてスクリプトを更新し、移行を再度実行します。
IBXアプリケーションの移行に関する詳しい解説は、次のDocWikiページで読むことができます。
IBXアプリケーションをFireDACへ移行する
RAD Studio 12.3 の FireDAC 機能の強化
上記は、12.3 リリースで FireDAC に追加された唯一の機能ではありません。次の機能も追加されました。
- Microsoft SQL Server 2022 の公式サポート。FireDAC での MSSQL シーケンスのサポートや、同じテーブル タイプの複数の TVP パラメータを持つストアド プロシージャのサポートが含まれます。
- Oracle DRCP (データベース常駐接続プール) のサポート
- MySQL 8.4への接続をサポート
- FireDAC は MongoDB のバージョン 3.0 から 8.0 をサポートします (クライアント DLL libbson および libmongoc の更新が必要です)。FireDAC MongoDB データベース接続には、UseSRV という新しいパラメータがあります。これは、DNS で構築された利用可能なサーバーのリストを有効にするために使用でき、MongoDB Atlas に接続するときに推奨されます。
これらのドライバーと関連機能の多くは、RAD Studio の Enterprise および Architect バージョンでのみ使用でき、Professional バージョンでは使用できないことに注意してください。
楽しいデータベースコーディング
データベース アクセスは、Delphi、C++Builder、RAD Studio のコアかつ基本的な機能であり、データベース RTL と FireDAC の継続的な改善に注力しています。REST および HTTP クライアント ライブラリとクラウド アクセス機能 (Enterprise および Architect のお客様が GetIt で利用できるサードパーティの Delphi 用 AWS SDK を含む) と組み合わせることができます。