Struct qldb::QueryBuilder[][src]

pub struct QueryBuilder { /* fields omitted */ }

Represents the query being built. It allows to add parameters and to execute the query.

Implementations

impl QueryBuilder[src]

pub fn param<P: Into<IonValue> + Clone>(self, param: P) -> Self[src]

Adds a param to the query. Params in PartiQL are deoned by the character ?. For example, the query: SELECT * FROM Autos WHERE id = ? AND model = ? will need 2 calls to this method. The first will refer to the first ? and the second to the second ?.

pub async fn execute(self) -> QLDBResult<DocumentCollection>[src]

Executes the query in QLDBwith the parameter provided by the param method. It will return a Vector of Ion Values, one for each document returned.

This method will automatically load all the pages. It may require to make several HTTP calls to the QLDB Ledger as each Page contains no more than 200 documents.

It consumes the QueryBuilder in the process.

pub fn get_cursor(self) -> QLDBResult<Cursor>[src]

Creates a cursor for this query, allowing to load values page by page. Each page in QLDB contains 200 documents.

pub async fn count(self) -> QLDBResult<i64>[src]

Sends a query to QLDB that returns a count. Keep in mind that there isn’t any filter to fail is another kind of statement is given.

Be careful with COUNT statements as they “block” the whole table and other transactions affecting the same table will return an OCC error when committed.

If you want to make a simple count, it is better to use the count method from Client::count

It consumes the QueryBuilder in the process.

Trait Implementations

impl Debug for QueryBuilder[src]

Auto Trait Implementations

Blanket Implementations

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

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

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

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

impl<T> Instrument for T[src]

impl<T> Instrument for T[src]

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

impl<T> Same<T> for T

type Output = T

Should always be Self

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.