pub trait StreamTrait: Send + Sync {
type Stream<'a>: Stream<Item = Result<QueryResult, DbErr>> + Send
where Self: 'a;
// Required methods
fn get_database_backend(&self) -> DbBackend;
fn stream_raw<'a>(
&'a self,
stmt: Statement,
) -> Pin<Box<dyn Future<Output = Result<Self::Stream<'a>, DbErr>> + Send + 'a>>;
// Provided method
fn stream<'a, S: StatementBuilder + Sync>(
&'a self,
stmt: &S,
) -> Pin<Box<dyn Future<Output = Result<Self::Stream<'a>, DbErr>> + Send + 'a>> { ... }
}Available on crate feature
stream only.Expand description
Streaming counterpart to ConnectionTrait: yields query results row by
row rather than collecting them all into a Vec. Use this for large
result sets when you don’t want to load everything into memory at once.
Required Associated Types§
Sourcetype Stream<'a>: Stream<Item = Result<QueryResult, DbErr>> + Send
where
Self: 'a
type Stream<'a>: Stream<Item = Result<QueryResult, DbErr>> + Send where Self: 'a
Create a stream for the QueryResult
Required Methods§
Sourcefn get_database_backend(&self) -> DbBackend
fn get_database_backend(&self) -> DbBackend
Get the database backend for the connection. This depends on feature flags enabled.
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".