FireDAC.Comp.DataSet.TFDDataSet.OpenOrExecute
Delphi
function OpenOrExecute: Boolean;
C++
bool __fastcall OpenOrExecute();
Inhaltsverzeichnis
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 AnweisungINSERT
. - 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 AnweisungSELECT
.
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;