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

SQL Anywhere 12.0.1 (Deutsch) » UltraLite - .NET-Programmierung » UltraLite.NET-Anwendungsentwicklung » Datenerstellung und -änderung mit der ULTable-Klasse

 

Mit Find und Lookup nach und in Zeilen suchen

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:

Hinweis

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 Table-Objekts 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.

 Suchen nach einer Zeile
  1. 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();
  2. 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" );
  3. 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.

    t.FindFirst();
  4. 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.

 Siehe auch