Struct oracle::SqlValue
[−]
[src]
pub struct SqlValue { /* fields omitted */ }
A type containing an Oracle value
When this is a column value in a select statement, the Oracle type is determined by the column type.
When this is a bind value in a SQL statement, the Oracle type is determined by ToSql.oratype which is internally called within Statement.bind, Statement.execute and Connection.execute.
Methods
impl SqlValue
[src]
fn get<T>(&self) -> Result<T> where
T: FromSql,
[src]
T: FromSql,
Gets the Oracle value. It internally does the followings:
- Checks whether the conversion from the Oracle type to the target rust type
is allowed. It returns
Err(Error::InvalidTypeConversion(...))
when it isn't allowed. - Checks whether the Oracle value is null. When it is null and the return
type is
Option<FromSql>
, it returnsOk(None)
. When it is null and it isn'tOption<FromSql>
, it returnsErr(Error::NullValue)
. - Converts the Oracle value to the rust value. The data type is converted
implicitly if required. For example string is converted to i64 by
[parse][] if
get::<i64>()
is called forVARCHAR2
columns. If the conversion fails, various errors are returned.
fn set(&mut self, val: &ToSql) -> Result<()>
[src]
Sets a rust value to the Oracle value. It internally does the followings:
- Checks whether the conversion from the rust type to the target Oracle type
is allowed. It returns
Err(Error::InvalidTypeConversion(...))
when it isn't allowed. - When the argument type is
None::<ToSql>
, null is set. - Otherwise, converts the rust value to the Oracle value. The data type
is converted implicitly if required. For example i64 is converted to
string by
to_string()
ifset(100i64)
is called forVARCHAR2
columns. When the argument isNone::<ToSql>
If the conversion fails, various errors are returned.
fn is_null(&self) -> Result<bool>
[src]
Returns Ok(true)
when the SQL value is null. Ok(false)
when it isn't null.
fn set_null(&mut self) -> Result<()>
[src]
Sets null to the SQL value.
fn oracle_type(&self) -> Result<&OracleType>
[src]
Gets the Oracle type of the SQL value.
Trait Implementations
impl Display for SqlValue
[src]
fn fmt(&self, f: &mut Formatter) -> Result
[src]
Formats any SQL value to string using the given formatter.
Note that both a null value and a string NULL
are formatted
as NULL
.
impl Debug for SqlValue
[src]
impl Clone for SqlValue
[src]
fn clone(&self) -> SqlValue
[src]
Returns a shallow copy of the value.
When it is a column value in a select statement, the internal data in the copy are changed after 100 fetches.
When it is a bind value in a SQL statement, the internal data in the copy are changed by the next execution of the statement.
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more