FromSql

Trait FromSql 

Source
pub trait FromSql<'a>
where Self: Sized + 'a,
{ // Required method fn from_sql(value: &'a ColumnData<'static>) -> Result<Option<Self>>; }
Expand description

A conversion trait from a TDS type by-reference.

A FromSql implementation for a Rust type is needed for using it as a return parameter from Row#get or Row#try_get methods. The following Rust types are already implemented to match the given server types:

Rust typeServer type
u8tinyint
i16smallint
i32int
i64bigint
f32float(24)
f64float(53)
boolbit
String/&strnvarchar/varchar/nchar/char/ntext/text
Vec<u8>/&[u8]binary/varbinary/image
Uuiduniqueidentifier
Numericnumeric/decimal
Decimal (with feature flag rust_decimal)numeric/decimal
XmlDataxml
NaiveDateTime (with feature flag chrono)datetime/datetime2/smalldatetime
NaiveDate (with feature flag chrono)date
NaiveTime (with feature flag chrono)time
DateTime (with feature flag chrono)datetimeoffset

See the time module for more information about the date and time structs.

Required Methods§

Source

fn from_sql(value: &'a ColumnData<'static>) -> Result<Option<Self>>

Returns the value, None being a null value, copying the value.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<'a> FromSql<'a> for &'a str

Source§

fn from_sql(value: &'a ColumnData<'static>) -> Result<Option<Self>>

Source§

impl<'a> FromSql<'a> for &'a [u8]

Source§

fn from_sql(value: &'a ColumnData<'static>) -> Result<Option<Self>>

Source§

impl<'a> FromSql<'a> for bool

Source§

fn from_sql(data: &'a ColumnData<'static>) -> Result<Option<Self>>

Source§

impl<'a> FromSql<'a> for f32

Source§

fn from_sql(data: &'a ColumnData<'static>) -> Result<Option<Self>>

Source§

impl<'a> FromSql<'a> for f64

Source§

fn from_sql(data: &'a ColumnData<'static>) -> Result<Option<Self>>

Source§

impl<'a> FromSql<'a> for i16

Source§

fn from_sql(data: &'a ColumnData<'static>) -> Result<Option<Self>>

Source§

impl<'a> FromSql<'a> for i32

Source§

fn from_sql(data: &'a ColumnData<'static>) -> Result<Option<Self>>

Source§

impl<'a> FromSql<'a> for i64

Source§

fn from_sql(data: &'a ColumnData<'static>) -> Result<Option<Self>>

Source§

impl<'a> FromSql<'a> for u8

Source§

fn from_sql(data: &'a ColumnData<'static>) -> Result<Option<Self>>

Implementors§

Source§

impl<'a> FromSql<'a> for &'a XmlData

Source§

impl<'a> FromSql<'a> for BigDecimal

Available on crate feature bigdecimal only.
Source§

impl<'a> FromSql<'a> for Decimal

Available on crate feature rust_decimal only.
Source§

impl<'a> FromSql<'a> for Numeric

Source§

impl<'a> FromSql<'a> for Uuid

Source§

impl<'a> FromSql<'a> for DateTime<FixedOffset>

Available on crate feature chrono only.
Source§

impl<'a> FromSql<'a> for DateTime<Utc>

Available on crate feature chrono only.
Source§

impl<'a> FromSql<'a> for NaiveDate

Available on crate feature chrono only.
Source§

impl<'a> FromSql<'a> for NaiveDateTime

Available on crate feature chrono only.
Source§

impl<'a> FromSql<'a> for NaiveTime

Available on crate feature chrono only.
Source§

impl<'a> FromSql<'a> for Date

Available on crate feature time only.
Source§

impl<'a> FromSql<'a> for OffsetDateTime

Available on crate feature time only.
Source§

impl<'a> FromSql<'a> for PrimitiveDateTime

Available on crate feature time only.
Source§

impl<'a> FromSql<'a> for Time

Available on crate feature time only.