sqlx_utils/types/
query.rs

1use super::Database;
2use sqlx::Database as DatabaseTrait;
3
4#[cfg(feature = "any")]
5pub type Query<'a> = sqlx::query::Query<'a, sqlx::Any, sqlx::any::AnyArguments<'a>>;
6
7#[cfg(all(feature = "postgres", not(any(feature = "sqlite", feature = "mysql", feature = "any"))))]
8pub type Query<'a> = sqlx::query::Query<'a, sqlx::Postgres, sqlx::postgres::PgArguments>;
9
10#[cfg(all(feature = "mysql", not(any(feature = "sqlite", feature = "any", feature = "postgres"))))]
11pub type Query<'a> = sqlx::query::Query<'a, sqlx::MySql, sqlx::mysql::MySqlArguments>;
12
13#[cfg(all(feature = "sqlite", not(any(feature = "any", feature = "mysql", feature = "postgres"))))]
14pub type Query<'a> = sqlx::query::Query<'a, sqlx::Sqlite, sqlx::sqlite::SqliteArguments<'a>>;
15
16/// A single SQL query as a prepared statement, mapping results using [`FromRow`](sqlx::FromRow).
17/// Returned by [`query_as()`](sqlx::query_as()) or [`query_as()`](sqlx::query_as!). This is a wrapper [`QueryAs`](sqlx::query::QueryAs) abstracting away
18/// the database into a simpler format using generic `DB` which implements [`Database`](DatabaseTrait)
19pub type QueryAs<'q, T, DB = Database> = sqlx::query::QueryAs<'q, Database, T, <DB as DatabaseTrait>::Arguments<'q>>;