[−][src]Enum odbc_api::DataType
Enumeration over valid SQL Data Types supported by ODBC
Variants
The type is not known.
Char(n). Character string of fixed length.
Fields of Char
length: ULenColumn size in characters (excluding terminating zero).
`Numeric(p,s). Signed, exact, numeric value with a precision p and scale s (1 <= p <= 15; s <= p)
Decimal(p,s). Signed, exact, numeric value with a precision of at least p and scale s. The
maximum precision is driver-defined. (1 <= p <= 15; s <= p)
Integer. 32 Bit Integer
Smallint. 16 Bit Integer
Float(p). Signed, approximate, numeric value with a binary precision of at least p. The
maximum precision is driver-defined.
Depending on the implementation binary precision is either 24 (f32) or 53 (f64).
Real. Signed, approximate, numeric value with a binary precision 24 (zero or absolute
value 10[-38] to 10[38]).
Double Precision. Signed, approximate, numeric value with a binary precision 53 (zero or
absolute value 10[-308] to 10[308]).
Varchar(n). Variable length character string.
Fields of Varchar
length: ULenMaximum length of the character string (excluding terminating zero).
Date. Year, month, and day fields, conforming to the rules of the Gregorian calendar.
Time. Hour, minute, and second fields, with valid values for hours of 00 to 23, valid
values for minutes of 00 to 59, and valid values for seconds of 00 to 61. Precision p
indicates the seconds precision.
Fields of Time
precision: i16Timestamp. Year, month, day, hour, minute, and second fields, with valid values as defined
for the Date and Time variants.
Fields of Timestamp
precision: i16BIGINT. Exact numeric value with precision 19 (if signed) or 20 (if unsigned) and scale 0
(signed: -2[63] <= n <= 2[63] - 1, unsigned: 0 <= n <= 2[64] - 1). Has no corresponding type
in SQL-92.
TINYINT. Exact numeric value with precision 3 and scale 0 (signed: -128 <= n <= 127,
unsigned: 0 <= n <= 255)
BIT. Single bit binary data.
The driver returned a type, but it is not among the other types of these enumeration. This is a catchall, in case the library is incomplete, or the data source supports custom or non-standard types.
Fields of Other
data_type: SqlDataTypeType of the column
column_size: ULenSize of column element
decimal_digits: i16Implementations
impl DataType[src]
pub fn new(
data_type: SqlDataType,
column_size: ULen,
decimal_digits: i16
) -> Self[src]
data_type: SqlDataType,
column_size: ULen,
decimal_digits: i16
) -> Self
This constructor is useful to create an instance of the enumeration using values returned by
ODBC Api calls like SQLDescribeCol, rather than just initializing a variant directly.
pub fn data_type(&self) -> SqlDataType[src]
The associated data_type discriminator for this variant.
pub fn column_size(&self) -> ULen[src]
Return the column size, as it is required to bind the data type as a parameter.
pub fn decimal_digits(&self) -> i16[src]
Return the number of decimal digits as required to bind the data type as a parameter.
Trait Implementations
impl Clone for DataType[src]
impl Copy for DataType[src]
impl Debug for DataType[src]
impl Default for DataType[src]
impl Eq for DataType[src]
impl PartialEq<DataType> for DataType[src]
impl StructuralEq for DataType[src]
impl StructuralPartialEq for DataType[src]
Auto Trait Implementations
impl RefUnwindSafe for DataType
impl Send for DataType
impl Sync for DataType
impl Unpin for DataType
impl UnwindSafe for DataType
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,