Struct sqlx_core::query_scalar::QueryScalar
source · pub struct QueryScalar<'q, DB: Database, O, A> { /* private fields */ }
Expand description
Raw SQL query with bind parameters, mapped to a concrete type using FromRow
on (O,)
.
Returned from query_scalar
.
Implementations§
source§impl<'q, DB: Database, O> QueryScalar<'q, DB, O, <DB as HasArguments<'q>>::Arguments>
impl<'q, DB: Database, O> QueryScalar<'q, DB, O, <DB as HasArguments<'q>>::Arguments>
source§impl<'q, DB, O, A> QueryScalar<'q, DB, O, A>where
DB: Database + HasStatementCache,
impl<'q, DB, O, A> QueryScalar<'q, DB, O, A>where DB: Database + HasStatementCache,
sourcepub fn persistent(self, value: bool) -> Self
pub fn persistent(self, value: bool) -> Self
If true
, the statement will get prepared once and cached to the
connection’s statement cache.
If queried once with the flag set to true
, all subsequent queries
matching the one with the flag will use the cached statement until the
cache is cleared.
Default: true
.
source§impl<'q, DB, O, A> QueryScalar<'q, DB, O, A>where
DB: Database,
O: Send + Unpin,
A: 'q + IntoArguments<'q, DB>,
(O,): Send + Unpin + for<'r> FromRow<'r, DB::Row>,
impl<'q, DB, O, A> QueryScalar<'q, DB, O, A>where DB: Database, O: Send + Unpin, A: 'q + IntoArguments<'q, DB>, (O,): Send + Unpin + for<'r> FromRow<'r, DB::Row>,
sourcepub fn fetch<'e, 'c: 'e, E>(
self,
executor: E
) -> BoxStream<'e, Result<O, Error>>where
E: 'e + Executor<'c, Database = DB>,
DB: 'e,
A: 'e,
O: 'e,
'q: 'e,
pub fn fetch<'e, 'c: 'e, E>( self, executor: E ) -> BoxStream<'e, Result<O, Error>>where E: 'e + Executor<'c, Database = DB>, DB: 'e, A: 'e, O: 'e, 'q: 'e,
Execute the query and return the generated results as a stream.
sourcepub fn fetch_many<'e, 'c: 'e, E>(
self,
executor: E
) -> BoxStream<'e, Result<Either<DB::QueryResult, O>, Error>>where
E: 'e + Executor<'c, Database = DB>,
DB: 'e,
A: 'e,
O: 'e,
'q: 'e,
pub fn fetch_many<'e, 'c: 'e, E>( self, executor: E ) -> BoxStream<'e, Result<Either<DB::QueryResult, O>, Error>>where E: 'e + Executor<'c, Database = DB>, DB: 'e, A: 'e, O: 'e, 'q: 'e,
Execute multiple queries and return the generated results as a stream from each query, in a stream.
sourcepub async fn fetch_all<'e, 'c: 'e, E>(
self,
executor: E
) -> Result<Vec<O>, Error>where
E: 'e + Executor<'c, Database = DB>,
DB: 'e,
(O,): 'e,
A: 'e,
'q: 'e,
pub async fn fetch_all<'e, 'c: 'e, E>( self, executor: E ) -> Result<Vec<O>, Error>where E: 'e + Executor<'c, Database = DB>, DB: 'e, (O,): 'e, A: 'e, 'q: 'e,
Execute the query and return all the generated results, collected into a Vec
.
Trait Implementations§
source§impl<'q, DB: Database, O: Send, A> Execute<'q, DB> for QueryScalar<'q, DB, O, A>where
A: 'q + IntoArguments<'q, DB> + Send,
impl<'q, DB: Database, O: Send, A> Execute<'q, DB> for QueryScalar<'q, DB, O, A>where A: 'q + IntoArguments<'q, DB> + Send,
source§fn statement(&self) -> Option<&<DB as HasStatement<'q>>::Statement>
fn statement(&self) -> Option<&<DB as HasStatement<'q>>::Statement>
Gets the previously cached statement, if available.
source§fn take_arguments(&mut self) -> Option<<DB as HasArguments<'q>>::Arguments>
fn take_arguments(&mut self) -> Option<<DB as HasArguments<'q>>::Arguments>
Returns the arguments to be bound against the query string. Read more
source§fn persistent(&self) -> bool
fn persistent(&self) -> bool
Returns
true
if the statement should be cached.