Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - Programmierung » Einführung in die Programmierung mit SQL Anywhere » SQL in Anwendungen verwenden » Mit Cursor arbeiten

 

Zeilen durch einen Cursor abrufen

Die einfachste Art, eine Ergebnismenge aus einer Abfrage mit einem Cursor zu verarbeiten, ist eine Schleife zum Absuchen aller Zeilen in der Ergebnismenge, bis keine Zeilen mehr vorhanden sind.

♦  So führen Sie einen Schleifendurchlauf auf Zeilen einer Ergebnismenge durch
  1. Deklarieren und öffnen Sie den Cursor (Embedded SQL), oder führen Sie eine Anweisung aus, die eine Ergebnismenge (ODBC, JDBC, Open Client) oder ein SADataReader-Objekt (ADO.NET) zurückgibt.

  2. Setzen Sie die Fetch-Vorgänge für die nächste Zeile fort, bis der Fehler Zeile nicht gefunden (Row Not Found) erscheint.

  3. Schließen Sie den Cursor.

Die Ausführung des zweiten Schrittes hängt davon ab, welche Schnittstelle Sie verwenden. Zum Beispiel:

  • ADO.NET   Verwenden Sie die Methode SADataReader.NextResult. Weitere Hinweise finden Sie unter NextResult-Methode.

  • ODBC   SQLFetch, SQLExtendedFetch oder SQLFetchScroll verschieben den Cursor in die nächste Zeile und geben die Daten zurück.

    Weitere Hinweise zur Verwendung eines Cursors in ODBC finden Sie unter Mit Ergebnismengen arbeiten.

  • JDBC   Die next-Methode des ResultSet-Objekts bewegt den Cursor weiter und gibt die Daten zurück.

    Weitere Hinweise zur Verwendung des ResultSet-Objekts in JDBC finden Sie unter Ergebnismengen liefern.

  • Embedded SQL   Die FETCH-Anweisung führt denselben Vorgang aus.

    Weitere Hinweise zur Verwendung von Cursor in Embedded SQL finden Sie unter Cursor in Embedded SQL verwenden.

  • Open Client   Die ct_fetch-Funktion verschiebt den Cursor in die nächste Zeile und gibt die Daten zurück.

    Weitere Hinweise zur Verwendung eines Cursors in Open Client-Anwendungen finden Sie unter Cursor verwenden.