[][src]Struct oracle::SqlValue

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.

Methods

impl SqlValue[src]

pub fn get<T>(&self) -> Result<T> where
    T: FromSql
[src]

Gets the Oracle value. It internally does the followings:

  1. 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.
  2. Checks whether the Oracle value is null. When it is null and the return type is Option<FromSql>, it returns Ok(None). When it is null and it isn't Option<FromSql>, it returns Err(Error::NullValue).
  3. 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 for VARCHAR2 columns. If the conversion fails, various errors are returned.

pub fn set(&mut self, val: &dyn ToSql) -> Result<()>[src]

Sets a rust value to the Oracle value. It internally does the followings:

  1. 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.
  2. When the argument type is None::<ToSql>, null is set.
  3. 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() if set(100i64) is called for VARCHAR2 columns. When the argument is None::<ToSql> If the conversion fails, various errors are returned.

pub fn is_null(&self) -> Result<bool>[src]

Returns Ok(true) when the SQL value is null. Ok(false) when it isn't null.

pub fn set_null(&mut self) -> Result<()>[src]

Sets null to the SQL value.

pub fn oracle_type(&self) -> Result<&OracleType>[src]

Gets the Oracle type of the SQL value.

pub fn dup(&self, conn: &Connection) -> Result<SqlValue>[src]

Returns a duplicated value of self.

Trait Implementations

impl Drop for SqlValue[src]

impl Debug for SqlValue[src]

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.

Auto Trait Implementations

impl !Send for SqlValue

impl Unpin for SqlValue

impl !Sync for SqlValue

impl !UnwindSafe for SqlValue

impl !RefUnwindSafe for SqlValue

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Err = <U as TryFrom<T>>::Err