 |
Btrieve API Guide (v11) |
 |
|
Get Less Than(10)
Get Less Than オペレーション(B_GET_LT)では、キー番号で指定されたキーが、キー バッファーに指定された値よりも次に小さな値を持つレコードを取得します。キーの重複が可能な場合は、同じキー値を持つグループの中で末尾のレコード(作成順)が取得されます。Get Key(+50)バイアスを使うと、ファイル内に値が存在するかどうかを検出することもできます。一般に、Get Key オペレーションの方が高速に処理されます。
メモ
降順キーで Get Less Than オペレーションを実行する場合、「次に小さな値」というのは、実際にはキー バッファーで指定された値よりも大きな値を指すことになります。
パラメーター
|
オペレーション コード
|
ポジション ブロック
|
データ バッファー
|
データ バッファー長
|
キー バッファー
|
キー番号
|
送り値
|
|
|
|
|
|
|
戻り値
|
|
|
|
|
|
|
前提条件
- 対象となるファイルが開いていることが必要です。
- ファイルがデータオンリー ファイルであってはいけません。
手順
- オペレーション コードに 10 を設定します。オプションで、ロック バイアスも指定できます。
- +100 - 単一レコード ウェイト ロック
- +200 - 単一レコード ノーウェイト ロック
- +300 - 複数レコード ウェイト ロック
- +400 - 複数レコード ノーウェイト ロック
- ロックの詳細については、『Pervasive PSQL Programmer's Guide』を参照してください。
- ファイルのポジション ブロックを渡します。
- データ バッファー長に取得するレコードの長さ以上の値を設定します。
- キー バッファー パラメーターに目的のキー値を指定します。
- キー番号パラメーターにキー パスを設定します。システム定義のログ キー(システム データ)を使用するには、125 を指定します。
結果
Get Less Than オペレーションが正常に終了した場合、トランザクショナル インターフェイスではレコードがデータ バッファーに、そのレコードのキー値がキー バッファーに、さらにそのレコードの長さがデータ バッファー長に返されます。
Get Less Than オペレーションが正常に実行されなかった場合は、トランザクショナル インターフェイスから次のステータス コードのいずれかが返されます。
3
|
ファイルが開いていません。
|
6
|
キー番号パラメーターが不正です。
|
22
|
データ バッファー パラメーターが短すぎます。
|
ポジショニング
Get Less Than オペレーションを実行すると、完全な論理カレンシーおよび物理カレンシーが確立し、取得したレコードが現在のレコードになります。
 Get Last(13) |
 Get Less Than or Equal(11) |
|