pub struct IndexColumnInfo {
pub column: Option<u16>,
pub expr_sql: Option<Vec<u8>>,
pub collation: Vec<u8>,
pub descending: bool,
pub declared_descending: bool,
}Expand description
One key column of an index.
Fields§
§column: Option<u16>The table column this key indexes, when it indexes a bare column.
expr_sql: Option<Vec<u8>>The key expression, as written, when the key is an expression.
collation: Vec<u8>The folded collation name the key is ordered by.
descending: boolWhether the key is stored descending.
declared_descending: boolWhether the declaration said descending, whatever the storage does.
A different question from descending, and the two used to be one.
This engine’s trees are always built ascending, so the catalog flattens
descending to false for the planner’s sake - a planner told about a
descending tree that does not exist draws three inverted conclusions
(see inillucent-catalog’s stored_ascending). But
PRAGMA index_xinfo reports what was declared, and an application
reading it to reconstruct a CREATE INDEX needs the DESC back.