persistent class %TSQL.sys.indexes
extends %Persistent
sysindexes contains one row for each clustered index (IDKey index),
one row for each nonclustered index (all other indexes),
one row for each table that has no clustered index,
and one row for each table that contains text or image columns.
parameter READONLY = 1;
READONLY = 1 means that objects can be created, opened but not saved or deleted.
Tables are projected to SQL as READONLY.
property doampg
as %Integer;
Page number for the object allocation map of a table
property id
as %Integer;
ID of a table, or ID of table to which index belongs
property indexfields
as list of %String(MAXLEN=128) [ SqlFieldName = index_fields ];
List of fields in the index. NULL for indid = 0 and 255
property indid
as %SmallInt;
0 if a table; 1 if a clustered index on an allpages-locked table;
>1 if a nonclustered index or a clustered index on a data-only-locked table;
255 if text, image or Java off-row structure (LOB structure)
property ioampg
as %Integer;
Page number for the allocation map of an index or (LOB structure)
property keycnt
as %SmallInt;
Number of keys for a clustered index on an allpages-locked table; number of keys, plus 1 for all other indexes
property name
as %String(MAXLEN=128);
Index or table name
property parentobjname
as %String(MAXLEN=128) [ SqlFieldName = parent_obj_name ];
Parent Object name
Object name of the parent_obj.
property schema
as %String(MAXLEN=128);
Name of the schema the column resides in
property status
as %SmallInt;
Internal system status information
Decimal Hex Status
1 0x1 Index supports foreign key constraint
2 0x2 Index supports primary key/unique declarative constraint
4 0x4 Index includes an IDENTITY column
8 0x8 Constraint name not specified
16 0x10 Large I/Os (prefetch) not enabled for table, index, or text chain
32 0x20 MRU cache strategy not enabled for table, index, or text chain
64 0x40 Ascending inserts turned on for the table
256 0x0100 Index is presorted and does not need to be copied to new extents
512 0x0200 Table is a data-only-locked table with a clustered index
8192 0x2000 Index on a data-only-locked table is suspect
property status2
as %Integer;
Internal system status information
Decimal Hex Status
1 0x1 Abort current command or trigger if attempt to insert duplicate key
2 0x2 Unique index
4 0x4 Abort current command or trigger if attempt to insert duplicate row; always 0 for data-only-locked tables
16 0x10 Clustered index
64 0x40 Index allows duplicate rows, if an allpages-locked table; always 0 for data-only-locked tables
128 0x80 Sorted object; not set for tables without clustered indexes or for text objects
512 0x200 sorted data option used in create index statement
2048 0x800 Index on primary key
32768 0x8000 Suspect index; index was created under another sort order
index (IDKEYIndex on id,indid) [IdKey,Unique];