Struct ydb_unofficial::client::YdbTransaction  
source · pub struct YdbTransaction<'a, C: Credentials> { /* private fields */ }Expand description
TableServiceClient with active session and transaction
Implementations§
source§impl<'a, C: Credentials> YdbTransaction<'a, C>
 
impl<'a, C: Credentials> YdbTransaction<'a, C>
Transactions implementation for ydb.
Examples
  let mut conn = ydb_unofficial::YdbConnection::from_env();
  let mut transaction = ydb_unofficial::YdbTransaction::create(conn.table().await.unwrap()).await.unwrap(); 
  use ydb_unofficial::generated::ydb::table::query::Query;
  let req = ydb_unofficial::generated::ydb::table::ExecuteDataQueryRequest{
    query: Some(ydb_unofficial::generated::ydb::table::Query{
       query: Some(Query::YqlText("SELECT 1+1 as sum, 2*2 as mul".into()))
    }),
     ..Default::default()
  };
  let result = transaction.execute_data_query(req).await.unwrap();
  transaction.commit().await;sourcepub async fn create(
    client: TableClientWithSession<'a, C>
) -> Result<YdbTransaction<'a, C>, YdbError>
 
pub async fn create( client: TableClientWithSession<'a, C> ) -> Result<YdbTransaction<'a, C>, YdbError>
Method that just creates ReadWrite transaction
sourcepub async fn commit(
    self
) -> (TableClientWithSession<'a, C>, Result<CommitTransactionResult, YdbError>)
 
pub async fn commit( self ) -> (TableClientWithSession<'a, C>, Result<CommitTransactionResult, YdbError>)
Commit transaction, drop transaction with commit
pub async fn rollback( self ) -> (TableClientWithSession<'a, C>, Result<(), YdbError>)
sourcepub async fn execute_data_query(
    &mut self,
    req: ExecuteDataQueryRequest
) -> Result<Response<ExecuteDataQueryResponse>, YdbError>
 
pub async fn execute_data_query( &mut self, req: ExecuteDataQueryRequest ) -> Result<Response<ExecuteDataQueryResponse>, YdbError>
you can execute multiple query requests in transaction transaction data will inject for each request
Trait Implementations§
source§impl<'a, C: Debug + Credentials> Debug for YdbTransaction<'a, C>
 
impl<'a, C: Debug + Credentials> Debug for YdbTransaction<'a, C>
source§impl<'c> Executor<'c> for YdbTransaction<'c, UpdatableToken>
Available on crate feature sqlx only. 
impl<'c> Executor<'c> for YdbTransaction<'c, UpdatableToken>
Available on crate feature 
sqlx only.type Database = Ydb
source§fn execute<'e, 'q: 'e, E>(
    self,
    query: E
) -> BoxFuture<'e, Result<YdbQueryResult, Error>>where
    E: Execute<'q, Self::Database> + 'q,
    'c: 'e,
 
fn execute<'e, 'q: 'e, E>( self, query: E ) -> BoxFuture<'e, Result<YdbQueryResult, Error>>where E: Execute<'q, Self::Database> + 'q, 'c: 'e,
Execute the query and return the total number of rows affected.
source§fn fetch_many<'e, 'q: 'e, E>(
    self,
    query: E
) -> BoxStream<'e, Result<Either<YdbQueryResult, YdbRow>, Error>>where
    E: Execute<'q, Ydb> + 'q,
    'c: 'e,
 
fn fetch_many<'e, 'q: 'e, E>( self, query: E ) -> BoxStream<'e, Result<Either<YdbQueryResult, YdbRow>, Error>>where E: Execute<'q, Ydb> + 'q, 'c: 'e,
Execute multiple queries and return the generated results as a stream
from each query, in a stream.
source§fn fetch_optional<'e, 'q: 'e, E>(
    self,
    query: E
) -> BoxFuture<'e, Result<Option<YdbRow>, Error>>where
    E: Execute<'q, Ydb> + 'q,
    'c: 'e,
 
fn fetch_optional<'e, 'q: 'e, E>( self, query: E ) -> BoxFuture<'e, Result<Option<YdbRow>, Error>>where E: Execute<'q, Ydb> + 'q, 'c: 'e,
Execute the query and returns at most one row.
source§fn prepare<'e, 'q: 'e>(
    self,
    sql: &'q str
) -> BoxFuture<'e, Result<YdbStatement, Error>>where
    'c: 'e,
 
fn prepare<'e, 'q: 'e>( self, sql: &'q str ) -> BoxFuture<'e, Result<YdbStatement, Error>>where 'c: 'e,
Prepare the SQL query to inspect the type information of its parameters
and results. Read more
source§fn fetch_all<'e, 'q: 'e, E>(
    self,
    query: E
) -> BoxFuture<'e, Result<Vec<YdbRow>, Error>>where
    E: Execute<'q, Self::Database> + 'q,
    'c: 'e,
 
fn fetch_all<'e, 'q: 'e, E>( self, query: E ) -> BoxFuture<'e, Result<Vec<YdbRow>, Error>>where E: Execute<'q, Self::Database> + 'q, 'c: 'e,
Execute the query and return all the generated results, collected into a 
Vec.source§fn execute_many<'e, 'q: 'e, E>(
    self,
    query: E
) -> BoxStream<'e, Result<YdbQueryResult, Error>>where
    E: Execute<'q, Self::Database> + 'q,
    'c: 'e,
 
fn execute_many<'e, 'q: 'e, E>( self, query: E ) -> BoxStream<'e, Result<YdbQueryResult, Error>>where E: Execute<'q, Self::Database> + 'q, 'c: 'e,
Execute multiple queries and return the rows affected from each query, in a stream.
source§fn fetch<'e, 'q: 'e, E>(self, query: E) -> BoxStream<'e, Result<YdbRow, Error>>where
    E: Execute<'q, Self::Database> + 'q,
    'c: 'e,
 
fn fetch<'e, 'q: 'e, E>(self, query: E) -> BoxStream<'e, Result<YdbRow, Error>>where E: Execute<'q, Self::Database> + 'q, 'c: 'e,
Execute the query and return the generated results as a stream.
source§fn fetch_one<'e, 'q: 'e, E>(
    self,
    query: E
) -> BoxFuture<'e, Result<YdbRow, Error>>where
    E: Execute<'q, Self::Database> + 'q,
    'c: 'e,
 
fn fetch_one<'e, 'q: 'e, E>( self, query: E ) -> BoxFuture<'e, Result<YdbRow, Error>>where E: Execute<'q, Self::Database> + 'q, 'c: 'e,
Execute the query and returns exactly one row.
source§fn prepare_with<'e, 'q: 'e>(
    self,
    sql: &'q str,
    _parameters: &'e [YdbTypeInfo]
) -> BoxFuture<'e, Result<YdbStatement, Error>>where
    'c: 'e,
 
fn prepare_with<'e, 'q: 'e>( self, sql: &'q str, _parameters: &'e [YdbTypeInfo] ) -> BoxFuture<'e, Result<YdbStatement, Error>>where 'c: 'e,
Prepare the SQL query, with parameter type information, to inspect the
type information about its parameters and results. Read more
Auto Trait Implementations§
impl<'a, C> !RefUnwindSafe for YdbTransaction<'a, C>
impl<'a, C> Send for YdbTransaction<'a, C>
impl<'a, C> Sync for YdbTransaction<'a, C>where C: Sync,
impl<'a, C> Unpin for YdbTransaction<'a, C>
impl<'a, C> !UnwindSafe for YdbTransaction<'a, C>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
 
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> Instrument for T
 
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
 
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
 
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
 
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
 
fn into_request(self) -> Request<T>
Wrap the input message 
T in a tonic::Request