 |
Btrieve API Guide (v11) |
 |
|
Step Previous(35)
Step Previous オペレーション(B_STEP_PREVIOUS)では、前の物理位置として示されるレコードを取得します。トランザクショナル インターフェイスでは Step Previous オペレーションでレコードを取得するためにインデックス パスは使用されません。
Step Previous オペレーションを任意の Get または Step オペレーションの直後に実行すると、前のオペレーションで取得されたレコードの物理的に前にあるレコードが返されます。
パラメーター
|
オペレーション コード
|
ポジション ブロック
|
データ バッファー
|
データ バッファー長
|
キー バッファー
|
キー番号
|
送り値
|
|
|
|
|
|
|
戻り値
|
|
|
|
|
|
|
前提条件
- 対象となるファイルが開いていることが必要です。
- 前の物理位置を確立しておくことが必要です(たとえば、Delete オペレーションの次に Step Previous オペレーションを実行することはできません)。
手順
- オペレーション コードに 35 を設定します。オプションで、ロック バイアスも指定できます。
- +100 - 単一レコード ウェイト ロック
- +200 - 単一レコード ノーウェイト ロック
- +300 - 複数レコード ウェイト ロック
- +400 - 複数レコード ノーウェイト ロック
- ロックの詳細については、『Pervasive PSQL Programmer's Guide』を参照してください。
- ファイルのポジション ブロックを渡します。
- データ バッファー長に取得するレコードの長さ以上の値を設定します。
結果
Step Previous オペレーションが正常に終了した場合、トランザクショナル インターフェイスではファイル内の前の物理レコードがデータ バッファーに返され、返されたバイト数がデータ バッファー長に設定されます。
このオペレーションが正常に実行されなかった場合、トランザクショナル インターフェイスから次のステータス コードのいずれかが返されます。
3
|
ファイルが開いていません。
|
9
|
オペレーションが EOF(end-of-file)を検出しました。(ファイルの先頭で実行した場合)
|
22
|
データ バッファー パラメーターが短すぎます。
|
ポジショニング
Step Previous オペレーションを実行しても、論理カレンシーは確立しません。取得したレコードを現在の物理レコードとして使用し、物理カレンシーが設定されます。
 Step Next Extended(38) |
 Step Previous Extended(39) |
|