Die Funktion ct_cursor wird für die Verwaltung von Cursorn verwendet. Diese Funktion hat den Parameter Typ, der die Aktion beschreibt, die Sie ausführen.
Einige der Cursortypen, die SQL Anywhere unterstützt, stehen in der Open Clientschnittstelle nicht zur Verfügung. Sie können über Open Client weder Scroll-Cursor, noch dynamische Scroll-Cursor, noch unempfindliche Cursor benutzen.
Eindeutigkeit und Aktualisierbarkeit sind zwei Eigenschaften von Cursorn. Cursor können eindeutig sein (unabhängig davon, ob sie von der Anwendung benutzt wird oder nicht, hat jede Zeile einen Primärschlüssel oder eine Eindeutigkeitsinformation) oder nicht eindeutig sein. Cursor können schreibgeschützt oder aktualisierbar sein. Ist ein Cursor aktualisierbar und nicht eindeutig, kann die Performance beeinträchtig werden, da in diesem Fall keine Zeilen vorab abgerufen werden können. Dies ist unabhängig von der CS_CURSOR_ROWS-Einstellung.
Im Gegensatz zu anderen Schnittstellen wie Embedded SQL ordnet Open Client einem Cursor eine SQL Anweisung als Zeichenfolge zu. Embedded SQL bereitet zuerst eine Anweisung vor, dann wird der Cursor mithilfe des Statement-Handles deklariert.
Um einen Cursor in Open Client zu deklarieren, verwenden Sie ct_cursor mit CS_CURSOR_DECLARE als Typ-Parameter.
Nachdem Sie einen Cursor deklariert haben, können Sie steuern, wieviele Zeilen vorab vom Client abgerufen werden, und zwar jedesmal, wenn eine Zeile mit ct_cursor mit CS_CURSOR_ROWS als Typ-Parameter vom Server abgerufen wird.
Durch Speichern der vorab abgerufenen Zeilen reduziert sich die Anzahl der Serveraufrufe. Dies verbessert den Gesamtdurchsatz und die Durchlaufzeit. Vorab abgerufene Zeilen werden nicht sofort an die Anwendung übergeben, sondern werden verwendungsbereit in einem clientseitigen Puffer zwischengespeichert.
Die Einstellung der Datenbankoption prefetch steuert den Prefetch-Vorgang für andere Schnittstellen. Sie wird von Open Client-Verbindungen nicht beachtet. Die Einstellung CS_CURSOR_ROWS wird bei nicht eindeutigen, aktualisierbaren Cursor nicht beachtet.
Sie öffnen einen Cursor in Open Client mit ct_cursor mit CS_CURSOR_OPEN als Typ-Parameter.
Verwenden Sie ct_fetch zum Abrufen einer Zeile in der Anwendung.
Um einen Cursor zu schließen, verwenden Sie ct_cursor mit CS_CURSOR_CLOSE.
In Open Client müssen Sie außerdem die Ressourcen freigeben, die an den Cursor gebunden waren. Verwenden Sie dafür ct_cursor mit CS_CURSOR_DEALLOC. Sie können auch CS_CURSOR_CLOSE mit dem zusätzlichen Parameter CS_DEALLOC benutzen, um diese Vorgänge in einem Schritt auszuführen.
Zeilen mit einen Cursor ändern
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |