UltraLite hat beim Arbeiten mit Daten mehrere Betriebsmodi. Zwei dieser Modi, die Modi zum Suchen und Nachschlagen, werden zum Suchen verwendet. Das Table-Objekt verfügt über zwei Methoden, die diesen Modi zum Ausfindigmachen bestimmter Zeilen in einer Tabelle entsprechen:
Die Spalten, die mit den Find- und Lookup-Methoden gesucht werden, müssen sich in dem Index befinden, der benutzt wird, um die Tabelle zu öffnen.
Find-Methoden Diese Methoden platzieren sich auf die erste Zeile, die den angegebenen Suchwerten genau entspricht, und zwar anhand der Sortierreihenfolge, die beim Öffnen des Tabellenobjekts angegeben wurde. Sollte die Suche nicht erfolgreich sein, wird die Anwendung vor der ersten oder nach der letzten Zeile positioniert.
Lookup-Methoden Sie wechseln gemäß der Sortierfolge, die beim Öffnen des Table-Objekts angegeben wurde, zur ersten Zeile, die größer gleich dem angegebenen Suchwert ist.
Aktivieren Sie den Find- oder Lookup-Modus.
Der Modus wird aktiviert, indem Sie eine Methode für das table-Objekt aufrufen. Der folgende Code leitet beispielsweise den Find-Modus ein.
t.FindBegin(); |
Legen Sie Suchwerte fest.
Dies geschieht durch Festlegen von Werten in der aktuellen Zeile. Die Festlegung dieser Werte betrifft nur den Puffer, der die aktuelle Zeile enthält, nicht die Datenbank. Der folgende Code setzt den Wert im Puffer beispielsweise auf Kaminski.
int lname = t.GetOrdinal( "lname" ); t.SetString( lname, "Kaminski" ); |
Suchen Sie nach der Zeile.
Verwenden Sie die geeignete Methode zum Ausführen der Suche. Mit der folgenden Anweisung wird z.B. nach der ersten Zeile gesucht, die genau mit dem angegebenen Wert im aktuellen Index übereinstimmt:
Für Indizes mit mehreren Spalten wird immer ein Wert für die erste Spalte benutzt, aber Sie können die anderen Spalten auslassen.
tCustomer.FindFirst(); |
Suchen Sie nach der nächsten Instanz der Zeile.
Verwenden Sie die geeignete Methode zum Ausführen der Suche. Für einen Suchvorgang ermittelt FindNext die nächste Instanz der Parameter im Index. Beim Nachschlagen ermittelt MoveNext die nächste Instanz.
Weitere Hinweise finden Sie unter ULTable-Klasse.
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 |