The sysindexes table stores information about indexed and unindexed tables. sysindexes has one row for each:
Allpages-locked table, the indid column is 0 if the table does not have a clustered index, and 1 if the table does have a clustered index.
Data-only-locked tables, the indid is always 0 for the table.
Nonclustered index, and for each clustered index on a data-only-locked table.
Table with one or more LOB columns, the index ID is always 255 for the LOB structure.
Each row in sysindexes stores pointers to a table or index to speed access to objects. Table 8-2 shows how these pointers are used during data access.
Column |
Use for table access |
Use for index access |
---|---|---|
root |
If indid is 0 and the table is a partitioned allpages-locked table, root points to the last page of the heap. |
Used to find the root page of the index tree. |
first |
Points to the first data page in the page chain for allpages-locked tables. |
Points to the first leaf-level page in a non clustered index or a clustered index on a data-only-locked table. |
doampg |
Points to the first OAM page for the table. |
|
ioampg |
Points to the first OAM page for an index. |