Documentation Source Text

Check-in [d9d337b927]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:More documentation on how PRAGMA index_info and PRAGMA index_xinfo handle indexes on expressions.
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: d9d337b9270d984f8f46cb8ac403975c75de2c217fb99bef6bdfec94f8206cad
User & Date: drh 2019-09-26 19:24:07
Context
2019-09-26
19:34
Update the RBU documentation to remove the constraint about it not working with indexes on expressions. check-in: e7771db6cc user: drh tags: trunk
19:24
More documentation on how PRAGMA index_info and PRAGMA index_xinfo handle indexes on expressions. check-in: d9d337b927 user: drh tags: trunk
19:02
Fix introspection pragma documentation to show that they are now on by default. Add documentation for the TCL Interface config method. check-in: a94ea31acb user: drh tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to pages/pragma.in.

  1471   1471       index-columns are not shown by the index_info pragma, but they are
  1472   1472       listed by the [index_xinfo pragma].</p>
  1473   1473   
  1474   1474       <p>Output columns from the index_info pragma are as follows:
  1475   1475       <ol>
  1476   1476       <li>^(The rank of the column within the index.  (0 means left-most.))^
  1477   1477       <li>^The rank of the column within the table being indexed.
  1478         -    <li>^The name of the column being indexed.
         1478  +        ^A value of -1 means [rowid] and a value of -2 means that an
         1479  +        [expression index|expression] is being used.
         1480  +    <li>^The name of the column being indexed.  ^This columns is NULL
         1481  +        if the column is the [rowid] or an [expression index|expression].
  1479   1482       </ol>
  1480   1483   
  1481   1484       <p>If there is no index named <i>index-name</i> but there is a
  1482   1485       [WITHOUT ROWID] table with that name, then (as of
  1483   1486       SQLite [version 3.30.0] on [dateof:3.30.0]) this pragma returns the
  1484   1487       PRIMARY KEY columns of the WITHOUT ROWID table as they are used
  1485   1488       in the records of the underlying b-tree, which is to say with
................................................................................
  1497   1500       locate the table entry that corresponds to each index entry.)
  1498   1501   
  1499   1502       <p>Output columns from the index_xinfo pragma are as follows:
  1500   1503       <ol>
  1501   1504       <li>^(The rank of the column within the index. (0 means left-most.
  1502   1505            Key columns come before auxiliary columns.))^
  1503   1506       <li>^The rank of the column within the table being indexed, or -1 if
  1504         -         the index-column is the [rowid] of the table being indexed.
         1507  +         the index-column is the [rowid] of the table being indexed and -2
         1508  +         if the [expression index|index is on an expression].
  1505   1509       <li>^The name of the column being indexed, or NULL if the index-column
  1506         -         is the [rowid] of the table being indexed.
         1510  +         is the [rowid] of the table being indexed or an
         1511  +         [expression index|expression].
  1507   1512       <li>^1 if the index-column is sorted in reverse (DESC) order by the
  1508   1513            index and 0 otherwise.
  1509   1514       <li>^The name for the [collating sequence]
  1510   1515            used to compare values in the index-column.
  1511   1516       <li>^1 if the index-column is a key column and 0 if the index-column
  1512   1517            is an auxiliary column.
  1513   1518       </ol>