FireDAC.Comp.Client.TFDQuery.SQL

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

property SQL: TStrings read GetSQL write SetSQL;

C++

__property SQL;

プロパティ

種類 可視性 ソース ユニット
property published
FireDAC.Comp.Client.pas
FireDAC.Comp.Client.hpp
FireDAC.Comp.Client TFDQuery

説明

クエリを実行するための SQL 文のテキストを保持します。

FireDAC.Comp.Client.TFDQuery.SQL は FireDAC.Comp.Client.TFDCustomQuery.SQL を継承しています。以下の内容はすべて FireDAC.Comp.Client.TFDCustomQuery.SQL を参照しています。

クエリを実行するための SQL 文のテキストを保持します。

SQL プロパティを使用すると、SQL コマンドを指定することができ、そこでクエリは Execute / ExecSQL / Open を行います。

設計時には、SQL プロパティは FireDAC クエリ エディタ ダイアログを呼び出すことで、編集することができます。そのためには、TFDCustomQuery コンポーネント上でダブルクリックをしてください。ダイアログでは、構文強調表示エディタ、クエリ ビルダ、クエリその他をテストする機能などが提供されています。

SQL プロパティは、SQL コマンドや、複数の SQL コマンドからなる「バッチ」SQL コマンド、サーバー側のプログラミング言語で記述されたコードのブロックなどを、保有することができます。フル機能の SQL スクリプトを実行するには、TFDScript コンポーネントを使用します。

SQL プロパティ内の SQL 文は、次も保有することができます:

  • パラメータ マーカー(標準 SQL-92 構文規約に従う)。パラメータは、自動的に作成され Params プロパティに格納されます(ResourceOptions.ParamCreateTrue の場合)。ParamBindModepbByName の場合、同じマーカの出現箇所すべてに対し、1 つの項目が Params 内に作成されます。ParamBindModepbByNumber の場合には、各マーカー毎に 1 つの項目が作成されます。
  • 置換変数マーカー。マクロは、自動的に作成され Macros プロパティに格納されます(ResourceOptions.MacroCreateTrue の場合)。
  • エスケープ シーケンス。これらにより、DBMS 非依存の SQL コマンドを記述することができます。
  • 条件付き置換。これらにより、アプリケーション定義属性によって、条件別に SQL コマンドを展開することができます。

詳細については、「コマンド テキストのプリプロセス」を参照してください。

TStringList メソッドを使用して、プロパティに大きな SQL クエリを追加する際のパフォーマンスを向上させるには、このコードを、SQL.BeginUpdate / SQL.EndUpdate で囲みます。

このプロパティ値を埋めた後に、ResourceOptions.ParamCreateTrue の場合、Param コレクションは自動的に埋められます。

 
 FDQuery1.SQL.BeginUpdate;
 try
   FDQuery1.SQL.Add('SELECT ...');
   FDQuery1.SQL.Add('...');
   FDQuery1.SQL.Add('...');
   FDQuery1.SQL.Add('WHERE ID = :ID');
 finally
   FDQuery1.SQL.EndUpdate;
 end;
 FDQuery1.ParamByName('ID').AsInteger := 100;
 FDQuery1.Open;

関連項目