FireDAC.Comp.Client.TFDCustomCommand.Macros
Delphi
property Macros: TFDMacros read FMacros write SetMacros stored False;
C++
__property Firedac::Stan::Param::TFDMacros* Macros = {read=FMacros, write=SetMacros, stored=false};
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
property | public | FireDAC.Comp.Client.pas FireDAC.Comp.Client.hpp |
FireDAC.Comp.Client | TFDCustomCommand |
説明
マクロの置換変数のコレクションです。
Macros プロパティは、マクロの置換変数のコレクションです。CommandText に代入した後、自動的に取り込まれます(ResourceOptions.MacroCreate が True の場合)。該当しない場合、手動で設定する必要があります。
Prepare を呼び出すとき、マクロの各値は、CommandText で置換されます(ResourceOptions.MacroExpand が True の場合)。
例
//Example 1 - Substitute table name:
ADCommand1.CommandText.Text := 'select * from &Tab';
ADCommand1.Macros[0].AsIdentifier := 'Order Details';
ADCommand1.Prepare;
ShowMessage(ADCommand1.SQLText); // select * from "Order Details"
//Example 2 - Substitute WHERE condition:
ADCommand1.CommandText.Text := 'select * from MyTab {if !cond} where !cond {fi}';
ADCommand1.Macros[0].AsString := 'ID > 100';
ADCommand1.Prepare;
ShowMessage(ADCommand1.SQLText); // select * from MyTab where ID > 100
ADCommand1.Macros[0].Clear;
ADCommand1.Prepare;
ShowMessage(ADCommand1.SQLText); // select * from MyTab