Btrieve API Guide (v11)

Get Greater Than or Equal(9)

Get Greater Than or Equal オペレーション(B_GET_GE)では、キー番号で指定されたキーが、キー バッファーに指定された値と等しいかそれよりも大きな値を持つレコードを取得します。トランザクショナル インターフェイスではまず、等しいという条件を満たすレコードが検索されます。キーの重複が可能な場合は、同じキー値を持つグループの中で先頭のレコード(作成順)が取得されます。Get Key(+50)バイアスを使うと、ファイル内に値が存在するかどうかを検出することもできます。一般に、Get Key オペレーションの方が高速に処理されます。


メモ

降順キーで Get Greater Than or Equal オペレーションを実行する場合、「次に大きな値」というのは、実際にはキー バッファーで指定された値よりも小さな値を指すことになります。


パラメーター

 
オペレーション コード
ポジション ブロック
データ バッファー
データ バッファー長
キー バッファー
キー番号
送り値

 

戻り値
 

 

前提条件

手順

  1. オペレーション コードに 9 を設定します。オプションで、ロック バイアスも指定できます。
  2. ファイルのポジション ブロックを渡します。
  3. データ バッファー長に取得するレコードの長さ以上の値を設定します。
  4. キー バッファー パラメーターにキー値を指定します。
  5. キー番号パラメーターに正しいキー パスを設定します。システム定義のログ キー(システム データ)を使用するには、125 を指定します。

結果

Get Greater Than or Equal オペレーションが正常に終了した場合、トランザクショナル インターフェイスでは要求したレコードがデータ バッファーに、キー値がキー バッファーに、さらにそのレコードの長さがデータ バッファー長に格納されます。

Get Greater Than or Equal オペレーションが正常に実行されなかった場合は、トランザクショナル インターフェイスから次のステータス コードのいずれかが返されます。

3
ファイルが開いていません。
6
キー番号パラメーターが不正です。
22
データ バッファー パラメーターが短すぎます。

ポジショニング

Get Greater Than or Equal オペレーションを実行すると、完全な論理カレンシーおよび物理カレンシーが確立し、取得したレコードが現在のレコードになります。


Get Greater(8)

Get Key(+50)