FireDAC.Comp.Client.TFDCustomCommand.NextRecordSet
Delphi
procedure NextRecordSet;
C++
void __fastcall NextRecordSet();
Inhaltsverzeichnis
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
procedure function |
public | FireDAC.Comp.Client.pas FireDAC.Comp.Client.hpp |
FireDAC.Comp.Client | TFDCustomCommand |
Beschreibung
Wechselt zum nächsten von der SQL-Anweisung zurückgegebenen Cursor.
Die Methode NextRecordSet schließt den aktuellen Cursor, wechselt zum nächsten zugreifbaren Cursor und öffnet die Anweisung. Wenn nach Durchführung dieses Aufrufs keine zugreifbaren Cursors vorhanden sind, wird die Anweisung geschlossen (State = csPrepared
).
Die Methode Close schließt den aktuellen Cursor. Die Methode CloseAll verwirft alle zugeordneten Cursors. Daher sollten Sie zum Abrufen aller Cursors vor dem Öffnen der Anweisung FetchOptions.AutoClose auf False setzen.
Bei Oracle REF CURSORs
für FireDAC handelt es sich auch um Cursors, und der Aufruf von NextRecordSet wählt den nächsten PL/SQL-Parameter REF CURSOR
aus.
Zur Entwurfszeit können Sie die Datenmenge an den nächsten Cursor durch Klicken mit der rechten Maustaste auf die Komponente und Auswahl von Nächste Datensatzgruppe im Popup-Menü weiterleiten.
Beispiel
ADCommand1.FetchOptions.AutoClose := False;
ADCommand1.CommandText.Text := 'select 1 as i; select ''qwe'' as s';
ADCommand1.Open;
oTab := ADCommand1.Define;
try
ADCommand1.Fetch(oTab);
ShowMessage(oTab.Rows[0].DumpRow(True)); // output "i: 1"
finally
oTab.Free;
end;
ADCommand1.NextRecordSet;
oTab := ADCommand1.Define;
try
ADCommand1.Fetch(oTab);
ShowMessage(oTab.Rows[0].DumpRow(True)); // output "s: qwe"
finally
oTab.Free;
end;
ADQuery1.CloseAll;