Xqlite.Schema.Types (Xqlite v0.7.0)

View Source

Defines shared types used across schema information structs.

Summary

Types

Indicates if and how a column is hidden/generated. From PRAGMA table_xinfo

The action to take on a foreign key constraint violation.

The foreign key matching clause type (rarely used beyond :none).

The origin of an index (how it was created).

The type of schema object (table, view, etc.).

The sort order for a column within an index.

The resolved type affinity of a column.

Types

column_hidden_kind()

@type column_hidden_kind() ::
  :normal | :hidden_alias | :virtual_generated | :stored_generated

Indicates if and how a column is hidden/generated. From PRAGMA table_xinfo:

  • :normal - A normal, visible column.
  • :hidden_alias - A hidden column (e.g., a rowid alias in a WITHOUT ROWID table).
  • :virtual_generated - A VIRTUAL generated column.
  • :stored_generated - A STORED generated column.

fk_action()

@type fk_action() :: :no_action | :restrict | :set_null | :set_default | :cascade

The action to take on a foreign key constraint violation.

fk_match()

@type fk_match() :: :none | :simple | :partial | :full

The foreign key matching clause type (rarely used beyond :none).

index_origin()

@type index_origin() :: :create_index | :unique_constraint | :primary_key_constraint

The origin of an index (how it was created).

object_type()

@type object_type() :: :table | :view | :shadow | :virtual | :sequence

The type of schema object (table, view, etc.).

sort_order()

@type sort_order() :: :asc | :desc

The sort order for a column within an index.

type_affinity()

@type type_affinity() :: :text | :numeric | :integer | :float | :binary

The resolved type affinity of a column.