FireDAC.Comp.DataSet.TFDDataSet.OpenOrExecute

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

function OpenOrExecute: Boolean;

C++

bool __fastcall OpenOrExecute();

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
function public
FireDAC.Comp.DataSet.pas
FireDAC.Comp.DataSet.hpp
FireDAC.Comp.DataSet TFDDataSet

Beschreibung

Führt eine SQL-Anweisung aus und öffnet optional die Datenmenge.

Verwenden Sie die Methode OpenOrExecute, wenn Sie nicht wissen, ob die Anweisung eine Ergebnismenge zurückgibt oder nicht. Der üblichste Anwendungsfall für diese Methode ist eine Ad-hoc-Abfrage.

Die Methode OpenOrExecute führt eine SQL-Anweisung aus. Wenn die Anweisung eine Ergebnismenge zurückgibt, dann öffnet OpenOrExecute die Datenmenge. Die Methode ersetzt die Methoden Open und Execute, ExecSQL oder ExecProc:

  • Die Methode Open löst eine Exception ("[FireDAC][Phys]-308. Anweisung muss Rowset zurückgeben") aus, wenn eine Anweisung keine Ergebnismenge zurückgibt, wie die Anweisung INSERT.
  • Die Methoden Execute, ExecSQL und ExecProc lösen eine Exception ("[FireDAC][Phys]-310. Anweisung, die Ergebnismengen zurückgibt, kann nicht ausgeführt werden") aus, wenn eine Anweisung eine Ergebnismenge zurückgibt, wie die Anweisung SELECT.

Beim Aufruf von OpenOrExecute kann eine "[FireDAC][Phys]-308"-Exception ausgelöst werden, aber diese wird nicht an die Methode weitergegeben.

Beispiel

FDQuery1.Disconnect(True);  
FDQuery1.SQL.Assign(Memo1.Lines);  
if FDQuery1.OpenOrExecute then begin    
  PageControl1.ActivePage := DataGridPage;    
  DataGridPage.TabVisible := True;  
end  
else    
  DataGridPage.TabVisible := False;

Siehe auch