Ultra Light には、データを操作するための操作モードがいくつかあります。これらのモードのうちの 2 つ (検索モードとルックアップモード) は、検索に使用されます。Table オブジェクトには、テーブル内の特定のローを検索するために、これらのモードに対応するメソッドがあります。
find メソッドや lookup メソッドを使用して検索されるカラムは、テーブルを開くのに使用されたインデックスにあることが必要です。
find メソッド Table オブジェクトを開いたときに指定したソート順に基づいて、指定された検索値と正確に一致する最初のローに移動します。検索値が見つからない場合は、最初のローの前、または最後のローの後ろに位置設定されます。
lookup メソッド Table オブジェクトを開いたときに指定したソート順に基づいて、指定された検索値と一致するか、それより大きい値の最初のローに移動します。
検索モードまたはルックアップモードを開始します。
モードを開始するには、テーブルオブジェクトのメソッドを呼び出します。たとえば、次のコードは検索モードを開始します。
t.FindBegin(); |
検索値を設定します。
検索値は、現在のローの値を設定することで設定します。これらの値の設定は、データベースではなく、現在のローを保持しているバッファーにのみ影響します。たとえば、次のコードは、バッファーの値を Kaminski に設定します。
int lname = t.GetOrdinal( "lname" ); t.SetString( lname, "Kaminski" ); |
ローを検索します。
適切なメソッドを使用して検索を実行します。たとえば、次の指示は、現在のインデックスで指定された値と正確に一致する最初のローを検索します。
マルチカラムインデックスの場合、最初のカラムの値が常に使用され、他のカラムは省略できます。
t.FindFirst(); |
ローの次のインスタンスを検索します。
適切なメソッドを使用して検索を実行します。検索操作の場合は、FindNext でインデックス内のパラメーターの次のインスタンスを検索します。ルックアップ操作では、MoveNext で次のインスタンスを検索します。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |