Struct YdbConnection

Source
pub struct YdbConnection {
    pub retry: bool,
    /* private fields */
}
Available on crate feature sqlx only.

Fields§

§retry: bool

Implementations§

Source§

impl YdbConnection

Source

pub fn executor(&mut self) -> Result<YdbExecutor<'_>, YdbError>

Retrieve DML executor, that can select/insert/update values in existing tables, but cannot modify their definitions

Source

pub fn scheme_executor(&mut self) -> Result<YdbSchemeExecutor<'_>, YdbError>

Retrieve DDL executor, that makes operations on tables (create, delete, replace tables/indexes/etc). Note that DDL executor cannot fetch results, prepare and describe (never can used in sqlx macro). Parameter binding also unavailable

Source

pub async fn reconnect(&mut self) -> Result<(), Error>

Reconnect to Ydb if received YdbError::NoSession received Sometimes Ydb service can invalidate connection with Session. An if you use single connection, you need to reconnect them

Trait Implementations§

Source§

impl Connection for YdbConnection

Source§

type Database = Ydb

Source§

type Options = YdbConnectOptions

Source§

fn close(self) -> BoxFuture<'static, Result<(), Error>>

Explicitly close this database connection. Read more
Source§

fn ping(&mut self) -> BoxFuture<'_, Result<(), Error>>

Checks if a connection to the database is still valid.
Source§

fn begin(&mut self) -> BoxFuture<'_, Result<Transaction<'_, Ydb>, Error>>
where Self: Sized,

Begin a new transaction or establish a savepoint within the active transaction. Read more
Source§

fn shrink_buffers(&mut self)

Restore any buffers in the connection to their default capacity, if possible. Read more
Source§

fn transaction<'a, F, R, E>( &'a mut self, callback: F, ) -> Pin<Box<dyn Future<Output = Result<R, E>> + Send + 'a>>
where F: for<'c> FnOnce(&'c mut Transaction<'_, Self::Database>) -> Pin<Box<dyn Future<Output = Result<R, E>> + Send + 'c>> + 'a + for<'c> Send + for<'c> Sync, Self: Sized, R: Send, E: From<Error> + Send,

Execute the function inside a transaction. Read more
Source§

fn connect( url: &str, ) -> Pin<Box<dyn Future<Output = Result<Self, Error>> + Send>>
where Self: Sized,

Establish a new database connection. Read more
Source§

fn connect_with( options: &Self::Options, ) -> Pin<Box<dyn Future<Output = Result<Self, Error>> + Send + '_>>
where Self: Sized,

Establish a new database connection with the provided options.
Source§

impl Migrate for YdbConnection

Available on crate feature migrate only.
Source§

fn ensure_migrations_table(&mut self) -> BoxFuture<'_, Result<(), MigrateError>>

Source§

fn dirty_version(&mut self) -> BoxFuture<'_, Result<Option<i64>, MigrateError>>

Source§

fn list_applied_migrations( &mut self, ) -> BoxFuture<'_, Result<Vec<AppliedMigration>, MigrateError>>

Source§

fn lock(&mut self) -> BoxFuture<'_, Result<(), MigrateError>>

Source§

fn unlock(&mut self) -> BoxFuture<'_, Result<(), MigrateError>>

Source§

fn apply<'e: 'm, 'm>( &'e mut self, migration: &'m Migration, ) -> BoxFuture<'m, Result<Duration, MigrateError>>

Source§

fn revert<'e: 'm, 'm>( &'e mut self, _migration: &'m Migration, ) -> BoxFuture<'m, Result<Duration, MigrateError>>

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,