ExSQL. AST. ColumnDef
(exsql v0.1.5)
Copy Markdown
A column definition inside CREATE TABLE.
affinity follows SQLite's type affinity model (section 3.1 of the SQLite
datatype docs): every column has one of five affinities derived from its
declared type, rather than a strict type.
Summary
Types
@type affinity() :: :integer | :text | :real | :numeric | :blob | :any
@type t() :: %ExSQL.AST.ColumnDef{ affinity: affinity(), autoincrement: boolean(), check: ExSQL.Parser.expr() | nil, check_name: String.t() | nil, collate: String.t() | nil, declared_type: String.t() | nil, default: ExSQL.Parser.expr() | nil, generated: {:virtual | :stored, ExSQL.Parser.expr()} | nil, name: String.t(), not_null: boolean(), primary_key: boolean(), references: term() | nil, unique: boolean() }