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

SQL Anywhere 12.0.1 » Ultra Light .NET プログラミング » Ultra Light.NET アプリケーション開発 » ULTable クラスを使用したデータの作成と修正

 

find と lookup を使用したローの検索

Ultra Light には、データを操作するための操作モードがいくつかあります。これらのモードのうちの 2 つ (検索モードとルックアップモード) は、検索に使用されます。Table オブジェクトには、テーブル内の特定のローを検索するために、これらのモードに対応するメソッドがあります。

注意

find メソッドや lookup メソッドを使用して検索されるカラムは、テーブルを開くのに使用されたインデックスにあることが必要です。

  • find メソッド   Table オブジェクトを開いたときに指定したソート順に基づいて、指定された検索値と正確に一致する最初のローに移動します。検索値が見つからない場合は、最初のローの前、または最後のローの後ろに位置設定されます。

  • lookup メソッド   Table オブジェクトを開いたときに指定したソート順に基づいて、指定された検索値と一致するか、それより大きい値の最初のローに移動します。

 ♦ ローの検索
  1. 検索モードまたはルックアップモードを開始します。

    モードを開始するには、テーブルオブジェクトのメソッドを呼び出します。たとえば、次のコードは検索モードを開始します。

    t.FindBegin();
  2. 検索値を設定します。

    検索値は、現在のローの値を設定することで設定します。これらの値の設定は、データベースではなく、現在のローを保持しているバッファーにのみ影響します。たとえば、次のコードは、バッファーの値を Kaminski に設定します。

    int lname = t.GetOrdinal( "lname" );
    t.SetString( lname, "Kaminski" );
  3. ローを検索します。

    適切なメソッドを使用して検索を実行します。たとえば、次の指示は、現在のインデックスで指定された値と正確に一致する最初のローを検索します。

    マルチカラムインデックスの場合、最初のカラムの値が常に使用され、他のカラムは省略できます。

    t.FindFirst();
  4. ローの次のインスタンスを検索します。

    適切なメソッドを使用して検索を実行します。検索操作の場合は、FindNext でインデックス内のパラメーターの次のインスタンスを検索します。ルックアップ操作では、MoveNext で次のインスタンスを検索します。

 参照