Crate ydb

source ·
Expand description

YDB SDK - a client for YDB.

§Example


 // create driver
 let client = ClientBuilder::new_from_connection_string("grpc://localhost:2136?database=local")?
    .with_credentials(StaticToken::from("asd"))
    .client()?;

 // wait until driver background initialization finish
 client.wait().await?;

 // read query result
 let sum: i32 = client
    .table_client() // create table client
    .retry_transaction(|mut t| async move {
        // code in transaction can retry few times if was some retriable error

        // send query to database
        let res = t.query(Query::from("SELECT 1 + 1 AS sum")).await?;

        // read exact one result from db
        let field_val: i32 = res.into_only_row()?.remove_field_by_name("sum")?.try_into()?;

        // return result
        return Ok(field_val);
    })
    .await?;

 // it will print "sum: 2"
 println!("sum: {}", sum);

§More examples

Url shorneter application

Many small examples

Macros§

  • sugar for manual construct query params
  • Sugar for manual construct structs Example:

Structs§

Enums§

Traits§

Type Aliases§