uidxlst

Describes the indexes associated with a table.

Description

An array of uidxlst structures (informally called the index list) is used to describe indexes associated with a table. There is one entry for each field in each index. Entries in the list are ordered first by index number (uidxnr) then by index sequence number (uidxsnr). Unless stated otherwise, every field is set by Uniface before the connector is called. Uniface currently only supports indexes which are either ascending or descending in all fields.

The connector can access the uidxlst structure by using the address of the first element provided in the current uctrl structure. The index list is available in:

control_block->uilist[0]..

control_block->uilist[(control_block->uinum -1)]

where control_block contains the address of the current uctrl structure.

Members

Member Description
short ufnr Field number (an index into the field list).
unsigned char uidxnr Index number (number one is by definition the primary key). The connector can find the highest index number by reading uidxnr from the last structure in the index list.
unsigned char uidxsnr Sequence number of the field within the index. The first field within the index has index sequence number one.
unsigned char uidxuni If non-zero, the index is unique (does not allow duplicate entries). Uniface assumes that the DBMS checks the uniqueness of entries in unique indexes.

Note:   The field uidxuni holds the same value for every field of a particular index.