FireDAC.Comp.DataSet.TFDDataSet.OpenOrExecute
Delphi
function OpenOrExecute: Boolean;
C++
bool __fastcall OpenOrExecute();
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
function | public | FireDAC.Comp.DataSet.pas FireDAC.Comp.DataSet.hpp |
FireDAC.Comp.DataSet | TFDDataSet |
説明
SQL コマンドを実行し、状況に応じてデータセットを開きます。
コマンドから結果セットが返されるかどうかが不明な場合には OpenOrExecute メソッドを使用してください。最も一般的なのは、アドホック クエリを実行する場合です。
OpenOrExecute メソッドは、SQL コマンドを実行します。そのコマンドから結果セットが返されると、OpenOrExecute はデータセットを開きます。このメソッドは、Open と、Execute、ExecSQL、または ExecProc のいずれかのメソッドとを合わせたものです。
INSERT
コマンドのように結果セットを返さないコマンドの場合、Open メソッドは、"[FireDAC][Phys]-308. Command must return row set"
([FireDAC][Phys]-308. コマンドは行セットを返さなければなりません)という例外を発生させます。SELECT
コマンドのように結果セットを返すコマンドの場合、Execute、ExecSQL、および ExecProc メソッドは、"[FireDAC][Phys]-310. Cannot execute command returning results set"
([FireDAC][Phys]-310. 結果セットを返すコマンドを実行できません)という例外を発生させます。
OpenOrExecute を呼び出すと、"[FireDAC][Phys]-308" 例外が発生する可能性がありますが、この例外はメソッドの外部に伝播しません。
例
FDQuery1.Disconnect(True);
FDQuery1.SQL.Assign(Memo1.Lines);
if FDQuery1.OpenOrExecute then begin
PageControl1.ActivePage := DataGridPage;
DataGridPage.TabVisible := True;
end
else
DataGridPage.TabVisible := False;