Get Less Than (10)
The Get Less Than operation (B_GET_LT) retrieves a record in which the value for the key specified by the Key Number has the previous lesser value than the value you supply in the Key Buffer. If the key allows duplicate values, this operation retrieves the last record (chronologically) of the group with the same key values. You can use the
Get Key (+50)
bias to detect the presence of a value in a file. A Get Key operation is generally faster.
Note:
If you are using the Get Less Than operation on descending keys, the next lesser value refers to a value higher than the one specified in the Key Buffer.
Parameters
Op Code
Pos Block
Data Buf
Data Buf Len
Key Buffer
Key Number
Sent
Returned
Prerequisites
•
The file must be open.
•
The file cannot be a data-only file.
Procedure
1
Set the Operation Code to 10. Optionally, you can include a lock bias:
•
+100—Single wait record lock.
•
+200—Single no-wait record lock.
•
+300—Multiple wait record lock.
•
+400—Multiple no-wait record lock.
For more information about locking, refer to the
Pervasive PSQL Programmer's Guide
.
2
Pass the Position Block for the file.
3
Set the Data Buffer Length to a value greater than or equal to the length of the record you want to retrieve.
4
Specify the desired key value in the Key Buffer parameter.
5
Set the Key Number parameter to the key path. To use the system-defined log key (also called system data), specify 125.
Result
If the Get Less Than operation is successful, the transactional interface returns the record in the Data Buffer, the key value for the record in the Key Buffer, and the length of the record in the Data Buffer Length parameter.
If the Get Less Than operation is unsuccessful, the transactional interface returns one of the following status codes:
3
The file is not open.
6
The key number parameter is invalid.
22
The data buffer parameter is too short.
Positioning
The Get Less Than operation establishes the complete logical and physical currencies and makes the retrieved record the current one.