pub enum PostgreSQLType {
Show 18 variants
Integer,
Bigint,
Smallint,
Serial,
Bigserial,
Text,
Varchar,
Char,
Real,
DoublePrecision,
Numeric,
Boolean,
Bytea,
Timestamp,
Timestamptz,
Date,
Time,
Timetz,
}Expand description
Enum representing supported PostgreSQL column types.
These correspond to PostgreSQL data types. See: https://www.postgresql.org/docs/current/datatype.html
§Examples
use drizzle_types::postgres::PostgreSQLType;
let int_type = PostgreSQLType::Integer;
assert_eq!(int_type.to_sql_type(), "INTEGER");
let serial = PostgreSQLType::Serial;
assert!(serial.is_serial());Variants§
Integer
PostgreSQL INTEGER type - 32-bit signed integer
See: https://www.postgresql.org/docs/current/datatype-numeric.html#DATATYPE-INT
Bigint
PostgreSQL BIGINT type - 64-bit signed integer
See: https://www.postgresql.org/docs/current/datatype-numeric.html#DATATYPE-INT
Smallint
PostgreSQL SMALLINT type - 16-bit signed integer
See: https://www.postgresql.org/docs/current/datatype-numeric.html#DATATYPE-INT
Serial
PostgreSQL SERIAL type - auto-incrementing 32-bit integer
See: https://www.postgresql.org/docs/current/datatype-numeric.html#DATATYPE-SERIAL
Bigserial
PostgreSQL BIGSERIAL type - auto-incrementing 64-bit integer
See: https://www.postgresql.org/docs/current/datatype-numeric.html#DATATYPE-SERIAL
Text
PostgreSQL TEXT type - variable-length character string
See: https://www.postgresql.org/docs/current/datatype-character.html
Varchar
PostgreSQL VARCHAR type - variable-length character string with limit
See: https://www.postgresql.org/docs/current/datatype-character.html
Char
PostgreSQL CHAR type - fixed-length character string
See: https://www.postgresql.org/docs/current/datatype-character.html
Real
PostgreSQL REAL type - single precision floating-point number
See: https://www.postgresql.org/docs/current/datatype-numeric.html#DATATYPE-FLOAT
DoublePrecision
PostgreSQL DOUBLE PRECISION type - double precision floating-point number
See: https://www.postgresql.org/docs/current/datatype-numeric.html#DATATYPE-FLOAT
Numeric
PostgreSQL NUMERIC type - exact numeric with selectable precision
See: https://www.postgresql.org/docs/current/datatype-numeric.html#DATATYPE-NUMERIC-DECIMAL
Boolean
PostgreSQL BOOLEAN type - true/false
See: https://www.postgresql.org/docs/current/datatype-boolean.html
Bytea
PostgreSQL BYTEA type - binary data
See: https://www.postgresql.org/docs/current/datatype-binary.html
Timestamp
PostgreSQL TIMESTAMP type - date and time
See: https://www.postgresql.org/docs/current/datatype-datetime.html
Timestamptz
PostgreSQL TIMESTAMPTZ type - date and time with time zone
See: https://www.postgresql.org/docs/current/datatype-datetime.html
Date
PostgreSQL DATE type - calendar date
See: https://www.postgresql.org/docs/current/datatype-datetime.html
Time
PostgreSQL TIME type - time of day
See: https://www.postgresql.org/docs/current/datatype-datetime.html
Timetz
PostgreSQL TIMETZ type - time of day with time zone
See: https://www.postgresql.org/docs/current/datatype-datetime.html
Implementations§
Source§impl PostgreSQLType
impl PostgreSQLType
Sourcepub fn from_attribute_name(name: &str) -> Option<Self>
pub fn from_attribute_name(name: &str) -> Option<Self>
Convert from attribute name to enum variant
For native enums, use [Self::from_enum_attribute] instead.
Sourcepub fn to_sql_type(&self) -> &str
pub fn to_sql_type(&self) -> &str
Get the SQL type string for this type
Sourcepub const fn supports_primary_key(&self) -> bool
pub const fn supports_primary_key(&self) -> bool
Check if this type supports primary keys
Sourcepub fn is_valid_flag(&self, flag: &str) -> bool
pub fn is_valid_flag(&self, flag: &str) -> bool
Check if a flag is valid for this column type
Trait Implementations§
Source§impl Clone for PostgreSQLType
impl Clone for PostgreSQLType
Source§fn clone(&self) -> PostgreSQLType
fn clone(&self) -> PostgreSQLType
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more