Trait rusqlite::types::FromSql

source ·
pub trait FromSql: Sized {
    fn column_result(value: ValueRef<'_>) -> FromSqlResult<Self>;
}
Expand description

A trait for types that can be created from a SQLite value.

Note that FromSql and ToSql are defined for most integral types, but not u64 or usize. This is intentional; SQLite returns integers as signed 64-bit values, which cannot fully represent the range of these types. Rusqlite would have to decide how to handle negative values: return an error or reinterpret as a very large postive numbers, neither of which is guaranteed to be correct for everyone. Callers can work around this by fetching values as i64 and then doing the interpretation themselves or by defining a newtype and implementing FromSql/ToSql for it.

Required Methods§

Implementations on Foreign Types§

“YYYY-MM-DD” => ISO 8601 calendar date without timezone.

“HH:MM”/“HH:MM:SS”/“HH:MM:SS.SSS” => ISO 8601 time without timezone.

“YYYY-MM-DD HH:MM:SS”/“YYYY-MM-DD HH:MM:SS.SSS” => ISO 8601 combined date and time without timezone. (“YYYY-MM-DDTHH:MM:SS”/“YYYY-MM-DDTHH:MM:SS.SSS” also supported)

RFC3339 (“YYYY-MM-DDTHH:MM:SS.SSS[+-]HH:MM”) into DateTime<Utc>.

RFC3339 (“YYYY-MM-DDTHH:MM:SS.SSS[+-]HH:MM”) into DateTime<Local>.

Deserialize text/blob to JSON Value.

Implementors§