diesel

Module sql_types

Source
Expand description

Types which represent a SQL data type.

The structs in this module are only used as markers to represent a SQL type. They should never be used in your structs. If you’d like to know the rust types which can be used for a given SQL type, see the documentation for that SQL type. Additional types may be provided by other crates.

To see which SQL type can be used with a given Rust type, see the “Implementors” section of FromSql.

Any backend specific types are re-exported through this module

Modules§

  • Possible values for SqlType::IsNullable
  • Represents the output of numeric operators in SQL

Structs§

  • Arraypostgres_backend
    The Array SQL type.
  • The big integer SQL type.
  • The binary SQL type.
  • The boolean SQL type.
  • CCharpostgres_backend
    The "char" SQL type. This is a PostgreSQL specific type. Used for e.g. setweight. Do not use in user tables.
  • Cidrpostgres_backend
    The CIDR SQL type. This type can only be used with feature = "network-address" or feature = "ipnet-address".
  • Citextpostgres_backend
    The Citext SQL type. This is a PostgreSQL specific type.
  • The date SQL type.
  • Datetimemysql_backend
    Represents the MySQL datetime type.
  • The double precision float SQL type.
  • The float SQL type.
  • Inetpostgres_backend
    The INET SQL type. This type can only be used with feature = "network-address" or feature = "ipnet-address".
  • The integer SQL type.
  • The interval SQL type.
  • The JSON SQL type. This type can only be used with feature = "serde_json"
  • The jsonb SQL type. This type can only be used with feature = "serde_json"
  • MacAddrpostgres_backend
    The MACADDR SQL type.
  • MacAddr8postgres_backend
    The MACADDR8 SQL type.
  • Moneypostgres_backend
    The PostgreSQL Money type.
  • Multirangepostgres_backend
    The Multirange SQL type.
  • The nullable SQL type.
  • The arbitrary precision numeric SQL type.
  • Oidpostgres_backend
    The OID SQL type. This is a PostgreSQL specific type.
  • Rangepostgres_backend
    The Range SQL type.
  • RangeBoundEnumpostgres_backend
    This is a wrapper for RangeBound to represent range bounds: ‘[]’, ‘(]’, ‘[)’, ‘()’, used in functions int4range, int8range, numrange, tsrange, tstzrange, daterange.
  • Recordpostgres_backend
    The Record (a.k.a. tuple) SQL type.
  • The small integer SQL type.
  • The text SQL type.
  • The time SQL type.
  • The timestamp SQL type.
  • Timestamptzpostgres_backend
    The “timestamp with time zone” SQL type, which PostgreSQL abbreviates to timestamptz.
  • The SQLite timestamp with time zone type
  • The tiny integer SQL type.
  • Unsignedmysql_backend
    Represents the MySQL unsigned type.
  • Query nodes with this expression type do not have a statically at compile time known expression type.
  • Uuidpostgres_backend
    The UUID SQL type. This type can only be used with feature = "uuid"

Enums§

  • RangeBoundpostgres_backend
    Represent postgres range bounds: ‘[]’, ‘(]’, ‘[)’, ‘()’, used in functions int4range, int8range, numrange, tsrange, tstzrange, daterange.

Traits§

  • Are both values of IsNull are nullable?
  • A marker trait for accepting expressions of the type Bool and Nullable<Bool> in the same place
  • Represents SQL types which can be used with SUM and AVG
  • Indicates that a SQL type exists for a backend.
  • Converts a type which may or may not be nullable into its not nullable representation.
  • Converts a type which may or may not be nullable into its nullable representation.
  • A type level constructor for maybe nullable types
  • Is one value of IsNull nullable?
  • A marker trait indicating that a SQL type represents a single value, as opposed to a list of values.
  • Marker trait for types which can be used with MAX and MIN
  • A marker trait for SQL types
  • Information about how a backend stores metadata about given SQL types

Type Aliases§

Derive Macros§

  • Implement numeric operators for the current query node
  • Implement necessary traits for adding a new sql type