/// Column definition used by drivers to build tables and migrations.
///
/// This struct is used when calling [`Driver::create_table`](crate::Driver::create_table) and
/// within [`AlterTableSingle::AddColumn`](crate::driver::AlterTableSingle::AddColumn). Driver backends
/// map the fields to SQL column definitions appropriate for their dialect.
///