Module types

Module types 

Source
Expand description

§Supported types

Rust typeExasol type
boolBOOLEAN
i8, i16, i32, i64DECIMAL
f64DOUBLE
String, &strCHAR(n) ASCII/UTF8, VARCHAR(n) ASCII/UTF8
ExaIntervalYearToMonthINTERVAL YEAR TO MONTH
HashTypeHASHTYPE
Option<T>T (for any T that implements Type)

§chrono feature

Rust typeExasol type
chrono::NaiveDateDATE
chrono::NaiveDateTimeTIMESTAMP
chrono::TimeDeltaINTERVAL DAY TO SECOND

§time feature

Rust typeExasol type
time::DateDATE
time::PrimitiveDateTimeTIMESTAMP
time::DurationINTERVAL DAY TO SECOND

§rust_decimal feature

Rust typeExasol type
rust_decimal::DecimalDECIMAL(p,s)

§bigdecimal feature

Rust typeExasol type
bigdecimal::BigDecimalDECIMAL(p,s)

§uuid feature

Rust typeExasol type
uuid::UuidHASHTYPE

§geo-types feature

Rust typeExasol type
geo_types::GeometryGEOMETRY

Note: due to a bug in the Exasol websocket API, GEOMETRY can’t be used as prepared statement bind parameters. It can, however, be used as a column in a returned result set or with runtime checked queries.

§json feature

The json feature enables Encode and Decode implementations for Json<T>, serde_json::Value and &serde_json::value::RawValue.

Structs§

ExaIntervalYearToMonth
A duration interval as a representation of the INTERVAL YEAR TO MONTH datatype.
ExaIter
Adapter allowing any iterator of encodable values to be treated and passed as a one dimensional parameter array for a column to Exasol in a single query invocation. Multi dimensional arrays are not supported. The adapter is needed because Encode is still a foreign trait and thus cannot be implemented in a generic manner to all types implementing IntoIterator.
HashType
Newtype used for more explicit encoding/decoding of arbitrary length data into/from HASHTYPE columns.

Traits§

ExaHasArrayType
Marker trait that limits arrays encoding to one dimensioanl arrays.