Skip to main content

Database

Trait Database 

Source
pub trait Database {
    // Required methods
    fn execute(&mut self, call: &Call<'_>) -> Answer;
    fn open(&mut self, call: &Call<'_>) -> Answer;
    fn fetch(&mut self, call: &Call<'_>) -> Answer;
    fn close(&mut self, call: &Call<'_>) -> Answer;
    fn commit(&mut self, call: &Call<'_>) -> Answer;
    fn rollback(&mut self, call: &Call<'_>) -> Answer;

    // Provided method
    fn close_all(&mut self) -> Result<(), Abandoned> { ... }
}

Required Methods§

Source

fn execute(&mut self, call: &Call<'_>) -> Answer

SELECT INTO, SET, VALUES INTO, INSERT, UPDATE and DELETE.

Source

fn open(&mut self, call: &Call<'_>) -> Answer

Source

fn fetch(&mut self, call: &Call<'_>) -> Answer

One row, or no row at the end.

Source

fn close(&mut self, call: &Call<'_>) -> Answer

Source

fn commit(&mut self, call: &Call<'_>) -> Answer

Source

fn rollback(&mut self, call: &Call<'_>) -> Answer

Provided Methods§

Source

fn close_all(&mut self) -> Result<(), Abandoned>

Closes every cursor, held ones too, as the end of a CICS task does, so the next task on the same connection finds none open. A backend without cursors of its own has nothing to close.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§