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 type | Server type |
|---|---|
u8 | tinyint |
i16 | smallint |
i32 | int |
i64 | bigint |
f32 | float(24) |
f64 | float(53) |
bool | bit |
String/&str | nvarchar/varchar/nchar/char/ntext/text |
Vec<u8>/&[u8] | binary/varbinary/image |
Uuid | uniqueidentifier |
Numeric | numeric/decimal |
Decimal (with feature flag rust_decimal) | numeric/decimal |
XmlData | xml |
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§
Sourcefn from_sql(value: &'a ColumnData<'static>) -> Result<Option<Self>>
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.