FireDAC.Comp.DataSet.TFDDataSet.OpenOrExecute
Delphi
function OpenOrExecute: Boolean;
C++
bool __fastcall OpenOrExecute();
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
function | public | FireDAC.Comp.DataSet.pas FireDAC.Comp.DataSet.hpp |
FireDAC.Comp.DataSet | TFDDataSet |
Description
Exécute une commande SQL et ouvre éventuellement l'ensemble de données.
Utilisez la méthode OpenOrExecute si vous ne savez pas si la commande renverra un ensemble de résultats ou non. Le cas le plus courant pour cela est l'exécution d'une requête ad hoc.
La méthode OpenOrExecute exécute une commande SQL. Si la commande renvoie un ensemble de résultats, OpenOrExecute ouvre l'ensemble de données. Cette méthode complète les méthodes Open et Execute, ExecSQL ou ExecProc :
- La méthode Open déclenche une exception (
"[FireDAC][Phys]-308. Command must return row set"
) si une commande ne renvoie pas l'ensemble de résultats comme la commandeINSERT
. - Les méthodes Execute,ExecSQL et ExecProc déclenchent une exception (
"[FireDAC][Phys]-310. Cannot execute command returning results set"
) si une commande renvoie l'ensemble de résultats comme la commandeSELECT
.
Lors de l'appel à la méthode OpenOrExecute, il se peut qu'une exception "[FireDAC][Phys]-308" soit déclenchée, mais elle n'est pas propagée en dehors de la méthode.
Exemple
FDQuery1.Disconnect(True); FDQuery1.SQL.Assign(Memo1.Lines); if FDQuery1.OpenOrExecute then begin PageControl1.ActivePage := DataGridPage; DataGridPage.TabVisible := True; end else DataGridPage.TabVisible := False;