bionic (3) PX_get_record2.3.gz

Provided by: pxlib-dev_0.6.7-1_amd64 bug

NAME

       PX_get_record2 — Returns record in Paradox file

SYNOPSIS

       #include <paradox.h>

       int PX_get_record2(pxdoc_t *pxdoc, int recno, char *data, int *deleted, pxdatablockinfo_t *pxdbinfo)

DESCRIPTION

       This  function is similar to PX_get_record(3) but takes two extra parameters. If *deleted is set to 1 the
       function will consider any record in the database, even those which are  deleted.  If  *pxdbinfo  is  not
       NULL, the function will return some information about the data block where the record has been read from.
       You will have to allocate memory for pxdbinfo before calling PX_get_record2.

       On return *deleted will be set to 1 if the requested record is deleted or 0 if it  is  not  deleted.  The
       struct pxdatablockinfo_t has the following fields:

       blockpos (long)
                 File  positon  where  the  block  starts.  The first six bytes of the block contain the header,
                 followed by the record data.

       recordpos (long)
                 File position where the requested record starts.

       size (int)
                 Size of the data block without the six bytes for the header.

       recno (int)
                 Record number within the data block. The first record in the block has number 0.

       numrecords (int)
                 The number of records in this block.

       number (int)
                 The number of the data block.

       This function may return records with invalid data, because records are not explizitly marked as deleted,
       but  rather  the  size  of  a valid data block is modified. A data block is a fixed size area in the file
       which holds a certain number of records. If for some reason a data block has newer been completely filled
       with  records,  the  algorithmn anticipates deleted records in this data block, which are not there. This
       often happens with the last data block in a file, which is likely to not being fully filled with records.

       If you accessing several records, do it in ascending order, because this is the most efficient way.

              Note:

              This function is deprecated.  Use PX_retrieve_record(3) instead

RETURN VALUE

       Returns 0 on success and -1 on failure.

SEE ALSO

       PX_get_field(3), PX_get_record(3)

AUTHOR

       This manual page was written by Uwe Steinmann uwe@steinmann.cx.

                                                                                               PX_GET_RECORD2(3)