DbBackend alias

This commit is contained in:
Chris Tsang 2021-07-17 22:03:41 +08:00
parent 041f1a135b
commit 9334d4ff5d
18 changed files with 151 additions and 149 deletions

View File

@ -2,7 +2,7 @@ mod entity;
use entity::*; use entity::*;
use sea_orm::{entity::*, error::*, DatabaseBackend, MockDatabase, MockExecResult, Transaction}; use sea_orm::{entity::*, error::*, DbBackend, MockDatabase, MockExecResult, Transaction};
#[async_std::test] #[async_std::test]
async fn test_insert() -> Result<(), DbErr> { async fn test_insert() -> Result<(), DbErr> {
@ -11,7 +11,7 @@ async fn test_insert() -> Result<(), DbErr> {
rows_affected: 1, rows_affected: 1,
}; };
let db = MockDatabase::new(DatabaseBackend::Postgres) let db = MockDatabase::new(DbBackend::Postgres)
.append_exec_results(vec![exec_result.clone()]) .append_exec_results(vec![exec_result.clone()])
.into_connection(); .into_connection();
@ -27,7 +27,7 @@ async fn test_insert() -> Result<(), DbErr> {
assert_eq!( assert_eq!(
db.into_transaction_log(), db.into_transaction_log(),
vec![Transaction::from_sql_and_values( vec![Transaction::from_sql_and_values(
DatabaseBackend::Postgres, DbBackend::Postgres,
r#"INSERT INTO "cake" ("name") VALUES ($1)"#, r#"INSERT INTO "cake" ("name") VALUES ($1)"#,
vec!["Apple Pie".into()] vec!["Apple Pie".into()]
)] )]
@ -43,7 +43,7 @@ async fn test_select() -> Result<(), DbErr> {
filling_id: 3, filling_id: 3,
}]; }];
let db = MockDatabase::new(DatabaseBackend::Postgres) let db = MockDatabase::new(DbBackend::Postgres)
.append_query_results(vec![query_results.clone()]) .append_query_results(vec![query_results.clone()])
.into_connection(); .into_connection();
@ -54,7 +54,7 @@ async fn test_select() -> Result<(), DbErr> {
assert_eq!( assert_eq!(
db.into_transaction_log(), db.into_transaction_log(),
vec![Transaction::from_sql_and_values( vec![Transaction::from_sql_and_values(
DatabaseBackend::Postgres, DbBackend::Postgres,
[ [
r#"SELECT "cake_filling"."cake_id", "cake_filling"."filling_id" FROM "cake_filling""#, r#"SELECT "cake_filling"."cake_id", "cake_filling"."filling_id" FROM "cake_filling""#,
r#"WHERE "cake_filling"."cake_id" = $1 AND "cake_filling"."filling_id" = $2"#, r#"WHERE "cake_filling"."cake_id" = $1 AND "cake_filling"."filling_id" = $2"#,
@ -73,7 +73,7 @@ async fn test_update() -> Result<(), DbErr> {
rows_affected: 1, rows_affected: 1,
}; };
let db = MockDatabase::new(DatabaseBackend::Postgres) let db = MockDatabase::new(DbBackend::Postgres)
.append_exec_results(vec![exec_result.clone()]) .append_exec_results(vec![exec_result.clone()])
.into_connection(); .into_connection();
@ -90,7 +90,7 @@ async fn test_update() -> Result<(), DbErr> {
assert_eq!( assert_eq!(
db.into_transaction_log(), db.into_transaction_log(),
vec![Transaction::from_sql_and_values( vec![Transaction::from_sql_and_values(
DatabaseBackend::Postgres, DbBackend::Postgres,
r#"UPDATE "fruit" SET "name" = $1 WHERE "fruit"."id" = $2"#, r#"UPDATE "fruit" SET "name" = $1 WHERE "fruit"."id" = $2"#,
vec!["Orange".into(), 1i32.into()] vec!["Orange".into(), 1i32.into()]
)] )]
@ -106,7 +106,7 @@ async fn test_delete() -> Result<(), DbErr> {
rows_affected: 1, rows_affected: 1,
}; };
let db = MockDatabase::new(DatabaseBackend::Postgres) let db = MockDatabase::new(DbBackend::Postgres)
.append_exec_results(vec![exec_result.clone()]) .append_exec_results(vec![exec_result.clone()])
.into_connection(); .into_connection();
@ -122,7 +122,7 @@ async fn test_delete() -> Result<(), DbErr> {
assert_eq!( assert_eq!(
db.into_transaction_log(), db.into_transaction_log(),
vec![Transaction::from_sql_and_values( vec![Transaction::from_sql_and_values(
DatabaseBackend::Postgres, DbBackend::Postgres,
r#"DELETE FROM "fruit" WHERE "fruit"."id" = $1"#, r#"DELETE FROM "fruit" WHERE "fruit"."id" = $1"#,
vec![3i32.into()] vec![3i32.into()]
)] )]

View File

@ -20,6 +20,8 @@ pub enum DatabaseBackend {
Sqlite, Sqlite,
} }
pub type DbBackend = DatabaseBackend;
impl Default for DatabaseConnection { impl Default for DatabaseConnection {
fn default() -> Self { fn default() -> Self {
Self::Disconnected Self::Disconnected
@ -45,12 +47,12 @@ impl std::fmt::Debug for DatabaseConnection {
} }
impl DatabaseConnection { impl DatabaseConnection {
pub fn get_database_backend(&self) -> DatabaseBackend { pub fn get_database_backend(&self) -> DbBackend {
match self { match self {
#[cfg(feature = "sqlx-mysql")] #[cfg(feature = "sqlx-mysql")]
DatabaseConnection::SqlxMySqlPoolConnection(_) => DatabaseBackend::MySql, DatabaseConnection::SqlxMySqlPoolConnection(_) => DbBackend::MySql,
#[cfg(feature = "sqlx-sqlite")] #[cfg(feature = "sqlx-sqlite")]
DatabaseConnection::SqlxSqlitePoolConnection(_) => DatabaseBackend::Sqlite, DatabaseConnection::SqlxSqlitePoolConnection(_) => DbBackend::Sqlite,
#[cfg(feature = "mock")] #[cfg(feature = "mock")]
DatabaseConnection::MockDatabaseConnection(conn) => conn.get_database_backend(), DatabaseConnection::MockDatabaseConnection(conn) => conn.get_database_backend(),
DatabaseConnection::Disconnected => panic!("Disconnected"), DatabaseConnection::Disconnected => panic!("Disconnected"),
@ -113,7 +115,7 @@ impl DatabaseConnection {
} }
} }
impl DatabaseBackend { impl DbBackend {
pub fn build<S>(&self, statement: &S) -> Statement pub fn build<S>(&self, statement: &S) -> Statement
where where
S: StatementBuilder, S: StatementBuilder,

View File

@ -1,5 +1,5 @@
use crate::{ use crate::{
error::*, DatabaseBackend, DatabaseConnection, EntityTrait, ExecResult, ExecResultHolder, Iden, error::*, DbBackend, DatabaseConnection, EntityTrait, ExecResult, ExecResultHolder, Iden,
Iterable, MockDatabaseConnection, MockDatabaseTrait, ModelTrait, QueryResult, QueryResultRow, Iterable, MockDatabaseConnection, MockDatabaseTrait, ModelTrait, QueryResult, QueryResultRow,
Statement, Transaction, Statement, Transaction,
}; };
@ -8,7 +8,7 @@ use std::collections::BTreeMap;
#[derive(Debug)] #[derive(Debug)]
pub struct MockDatabase { pub struct MockDatabase {
db_backend: DatabaseBackend, db_backend: DbBackend,
transaction_log: Vec<Transaction>, transaction_log: Vec<Transaction>,
exec_results: Vec<MockExecResult>, exec_results: Vec<MockExecResult>,
query_results: Vec<Vec<MockRow>>, query_results: Vec<Vec<MockRow>>,
@ -43,7 +43,7 @@ where
} }
impl MockDatabase { impl MockDatabase {
pub fn new(db_backend: DatabaseBackend) -> Self { pub fn new(db_backend: DbBackend) -> Self {
Self { Self {
db_backend, db_backend,
transaction_log: Vec::new(), transaction_log: Vec::new(),
@ -103,7 +103,7 @@ impl MockDatabaseTrait for MockDatabase {
std::mem::take(&mut self.transaction_log) std::mem::take(&mut self.transaction_log)
} }
fn get_database_backend(&self) -> DatabaseBackend { fn get_database_backend(&self) -> DbBackend {
self.db_backend self.db_backend
} }
} }

View File

@ -1,4 +1,4 @@
use crate::DatabaseBackend; use crate::DbBackend;
use sea_query::{ use sea_query::{
inject_parameters, MysqlQueryBuilder, PostgresQueryBuilder, SqliteQueryBuilder, Values, inject_parameters, MysqlQueryBuilder, PostgresQueryBuilder, SqliteQueryBuilder, Values,
}; };
@ -8,15 +8,15 @@ use std::fmt;
pub struct Statement { pub struct Statement {
pub sql: String, pub sql: String,
pub values: Option<Values>, pub values: Option<Values>,
pub db_backend: DatabaseBackend, pub db_backend: DbBackend,
} }
pub trait StatementBuilder { pub trait StatementBuilder {
fn build(&self, db_backend: &DatabaseBackend) -> Statement; fn build(&self, db_backend: &DbBackend) -> Statement;
} }
impl Statement { impl Statement {
pub fn from_string(db_backend: DatabaseBackend, stmt: String) -> Statement { pub fn from_string(db_backend: DbBackend, stmt: String) -> Statement {
Statement { Statement {
sql: stmt, sql: stmt,
values: None, values: None,
@ -25,7 +25,7 @@ impl Statement {
} }
pub fn from_string_values_tuple( pub fn from_string_values_tuple(
db_backend: DatabaseBackend, db_backend: DbBackend,
stmt: (String, Values), stmt: (String, Values),
) -> Statement { ) -> Statement {
Statement { Statement {
@ -57,9 +57,9 @@ impl fmt::Display for Statement {
macro_rules! build_any_stmt { macro_rules! build_any_stmt {
($stmt: expr, $db_backend: expr) => { ($stmt: expr, $db_backend: expr) => {
match $db_backend { match $db_backend {
DatabaseBackend::MySql => $stmt.build(MysqlQueryBuilder), DbBackend::MySql => $stmt.build(MysqlQueryBuilder),
DatabaseBackend::Postgres => $stmt.build(PostgresQueryBuilder), DbBackend::Postgres => $stmt.build(PostgresQueryBuilder),
DatabaseBackend::Sqlite => $stmt.build(SqliteQueryBuilder), DbBackend::Sqlite => $stmt.build(SqliteQueryBuilder),
} }
}; };
} }
@ -67,7 +67,7 @@ macro_rules! build_any_stmt {
macro_rules! build_query_stmt { macro_rules! build_query_stmt {
($stmt: ty) => { ($stmt: ty) => {
impl StatementBuilder for $stmt { impl StatementBuilder for $stmt {
fn build(&self, db_backend: &DatabaseBackend) -> Statement { fn build(&self, db_backend: &DbBackend) -> Statement {
let stmt = build_any_stmt!(self, db_backend); let stmt = build_any_stmt!(self, db_backend);
Statement::from_string_values_tuple(*db_backend, stmt) Statement::from_string_values_tuple(*db_backend, stmt)
} }
@ -83,7 +83,7 @@ build_query_stmt!(sea_query::DeleteStatement);
macro_rules! build_schema_stmt { macro_rules! build_schema_stmt {
($stmt: ty) => { ($stmt: ty) => {
impl StatementBuilder for $stmt { impl StatementBuilder for $stmt {
fn build(&self, db_backend: &DatabaseBackend) -> Statement { fn build(&self, db_backend: &DbBackend) -> Statement {
let stmt = build_any_stmt!(self, db_backend); let stmt = build_any_stmt!(self, db_backend);
Statement::from_string(*db_backend, stmt) Statement::from_string(*db_backend, stmt)
} }

View File

@ -1,4 +1,4 @@
use crate::{DatabaseBackend, Statement}; use crate::{DbBackend, Statement};
use sea_query::{Value, Values}; use sea_query::{Value, Values};
#[derive(Debug, Clone, PartialEq)] #[derive(Debug, Clone, PartialEq)]
@ -7,7 +7,7 @@ pub struct Transaction {
} }
impl Transaction { impl Transaction {
pub fn from_sql_and_values<I>(db_backend: DatabaseBackend, sql: &str, values: I) -> Self pub fn from_sql_and_values<I>(db_backend: DbBackend, sql: &str, values: I) -> Self
where where
I: IntoIterator<Item = Value>, I: IntoIterator<Item = Value>,
{ {

View File

@ -1,5 +1,5 @@
use crate::{ use crate::{
debug_print, error::*, DatabaseBackend, DatabaseConnection, ExecResult, MockDatabase, debug_print, error::*, DbBackend, DatabaseConnection, ExecResult, MockDatabase,
QueryResult, Statement, Transaction, QueryResult, Statement, Transaction,
}; };
use std::sync::{ use std::sync::{
@ -21,7 +21,7 @@ pub trait MockDatabaseTrait: Send {
fn drain_transaction_log(&mut self) -> Vec<Transaction>; fn drain_transaction_log(&mut self) -> Vec<Transaction>;
fn get_database_backend(&self) -> DatabaseBackend; fn get_database_backend(&self) -> DbBackend;
} }
impl MockDatabaseConnector { impl MockDatabaseConnector {
@ -48,13 +48,13 @@ impl MockDatabaseConnector {
#[cfg(feature = "sqlx-mysql")] #[cfg(feature = "sqlx-mysql")]
if crate::SqlxMySqlConnector::accepts(string) { if crate::SqlxMySqlConnector::accepts(string) {
return connect_mock_db!(DatabaseBackend::MySql); return connect_mock_db!(DbBackend::MySql);
} }
#[cfg(feature = "sqlx-sqlite")] #[cfg(feature = "sqlx-sqlite")]
if crate::SqlxSqliteConnector::accepts(string) { if crate::SqlxSqliteConnector::accepts(string) {
return connect_mock_db!(DatabaseBackend::Sqlite); return connect_mock_db!(DbBackend::Sqlite);
} }
connect_mock_db!(DatabaseBackend::Postgres) connect_mock_db!(DbBackend::Postgres)
} }
} }
@ -92,7 +92,7 @@ impl MockDatabaseConnection {
self.mocker.lock().unwrap().query(counter, statement) self.mocker.lock().unwrap().query(counter, statement)
} }
pub fn get_database_backend(&self) -> DatabaseBackend { pub fn get_database_backend(&self) -> DbBackend {
self.mocker.lock().unwrap().get_database_backend() self.mocker.lock().unwrap().get_database_backend()
} }
} }

View File

@ -71,9 +71,9 @@ pub trait EntityTrait: EntityName {
/// ///
/// ``` /// ```
/// # #[cfg(feature = "mock")] /// # #[cfg(feature = "mock")]
/// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, Transaction, DatabaseBackend}; /// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, Transaction, DbBackend};
/// # /// #
/// # let db = MockDatabase::new(DatabaseBackend::Postgres) /// # let db = MockDatabase::new(DbBackend::Postgres)
/// # .append_query_results(vec![ /// # .append_query_results(vec![
/// # vec![ /// # vec![
/// # cake::Model { /// # cake::Model {
@ -127,10 +127,10 @@ pub trait EntityTrait: EntityName {
/// db.into_transaction_log(), /// db.into_transaction_log(),
/// vec![ /// vec![
/// Transaction::from_sql_and_values( /// Transaction::from_sql_and_values(
/// DatabaseBackend::Postgres, r#"SELECT "cake"."id", "cake"."name" FROM "cake" LIMIT $1"#, vec![1u64.into()] /// DbBackend::Postgres, r#"SELECT "cake"."id", "cake"."name" FROM "cake" LIMIT $1"#, vec![1u64.into()]
/// ), /// ),
/// Transaction::from_sql_and_values( /// Transaction::from_sql_and_values(
/// DatabaseBackend::Postgres, r#"SELECT "cake"."id", "cake"."name" FROM "cake""#, vec![] /// DbBackend::Postgres, r#"SELECT "cake"."id", "cake"."name" FROM "cake""#, vec![]
/// ), /// ),
/// ]); /// ]);
/// ``` /// ```
@ -144,9 +144,9 @@ pub trait EntityTrait: EntityName {
/// ///
/// ``` /// ```
/// # #[cfg(feature = "mock")] /// # #[cfg(feature = "mock")]
/// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, Transaction, DatabaseBackend}; /// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, Transaction, DbBackend};
/// # /// #
/// # let db = MockDatabase::new(DatabaseBackend::Postgres) /// # let db = MockDatabase::new(DbBackend::Postgres)
/// # .append_query_results(vec![ /// # .append_query_results(vec![
/// # vec![ /// # vec![
/// # cake::Model { /// # cake::Model {
@ -175,15 +175,15 @@ pub trait EntityTrait: EntityName {
/// assert_eq!( /// assert_eq!(
/// db.into_transaction_log(), /// db.into_transaction_log(),
/// vec![Transaction::from_sql_and_values( /// vec![Transaction::from_sql_and_values(
/// DatabaseBackend::Postgres, r#"SELECT "cake"."id", "cake"."name" FROM "cake" WHERE "cake"."id" = $1"#, vec![11i32.into()] /// DbBackend::Postgres, r#"SELECT "cake"."id", "cake"."name" FROM "cake" WHERE "cake"."id" = $1"#, vec![11i32.into()]
/// )]); /// )]);
/// ``` /// ```
/// Find by composite key /// Find by composite key
/// ``` /// ```
/// # #[cfg(feature = "mock")] /// # #[cfg(feature = "mock")]
/// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, Transaction, DatabaseBackend}; /// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, Transaction, DbBackend};
/// # /// #
/// # let db = MockDatabase::new(DatabaseBackend::Postgres) /// # let db = MockDatabase::new(DbBackend::Postgres)
/// # .append_query_results(vec![ /// # .append_query_results(vec![
/// # vec![ /// # vec![
/// # cake_filling::Model { /// # cake_filling::Model {
@ -212,7 +212,7 @@ pub trait EntityTrait: EntityName {
/// assert_eq!( /// assert_eq!(
/// db.into_transaction_log(), /// db.into_transaction_log(),
/// vec![Transaction::from_sql_and_values( /// vec![Transaction::from_sql_and_values(
/// DatabaseBackend::Postgres, /// DbBackend::Postgres,
/// [ /// [
/// r#"SELECT "cake_filling"."cake_id", "cake_filling"."filling_id" FROM "cake_filling""#, /// r#"SELECT "cake_filling"."cake_id", "cake_filling"."filling_id" FROM "cake_filling""#,
/// r#"WHERE "cake_filling"."cake_id" = $1 AND "cake_filling"."filling_id" = $2"#, /// r#"WHERE "cake_filling"."cake_id" = $1 AND "cake_filling"."filling_id" = $2"#,
@ -246,9 +246,9 @@ pub trait EntityTrait: EntityName {
/// ///
/// ``` /// ```
/// # #[cfg(feature = "mock")] /// # #[cfg(feature = "mock")]
/// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, MockExecResult, Transaction, DatabaseBackend}; /// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, MockExecResult, Transaction, DbBackend};
/// # /// #
/// # let db = MockDatabase::new(DatabaseBackend::Postgres) /// # let db = MockDatabase::new(DbBackend::Postgres)
/// # .append_exec_results(vec![ /// # .append_exec_results(vec![
/// # MockExecResult { /// # MockExecResult {
/// # last_insert_id: 15, /// # last_insert_id: 15,
@ -277,7 +277,7 @@ pub trait EntityTrait: EntityName {
/// assert_eq!( /// assert_eq!(
/// db.into_transaction_log(), /// db.into_transaction_log(),
/// vec![Transaction::from_sql_and_values( /// vec![Transaction::from_sql_and_values(
/// DatabaseBackend::Postgres, r#"INSERT INTO "cake" ("name") VALUES ($1)"#, vec!["Apple Pie".into()] /// DbBackend::Postgres, r#"INSERT INTO "cake" ("name") VALUES ($1)"#, vec!["Apple Pie".into()]
/// )]); /// )]);
/// ``` /// ```
fn insert<A>(model: A) -> Insert<A> fn insert<A>(model: A) -> Insert<A>
@ -293,9 +293,9 @@ pub trait EntityTrait: EntityName {
/// ///
/// ``` /// ```
/// # #[cfg(feature = "mock")] /// # #[cfg(feature = "mock")]
/// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, MockExecResult, Transaction, DatabaseBackend}; /// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, MockExecResult, Transaction, DbBackend};
/// # /// #
/// # let db = MockDatabase::new(DatabaseBackend::Postgres) /// # let db = MockDatabase::new(DbBackend::Postgres)
/// # .append_exec_results(vec![ /// # .append_exec_results(vec![
/// # MockExecResult { /// # MockExecResult {
/// # last_insert_id: 28, /// # last_insert_id: 28,
@ -328,7 +328,7 @@ pub trait EntityTrait: EntityName {
/// assert_eq!( /// assert_eq!(
/// db.into_transaction_log(), /// db.into_transaction_log(),
/// vec![Transaction::from_sql_and_values( /// vec![Transaction::from_sql_and_values(
/// DatabaseBackend::Postgres, r#"INSERT INTO "cake" ("name") VALUES ($1), ($2)"#, /// DbBackend::Postgres, r#"INSERT INTO "cake" ("name") VALUES ($1), ($2)"#,
/// vec!["Apple Pie".into(), "Orange Scone".into()] /// vec!["Apple Pie".into(), "Orange Scone".into()]
/// )]); /// )]);
/// ``` /// ```
@ -348,9 +348,9 @@ pub trait EntityTrait: EntityName {
/// ///
/// ``` /// ```
/// # #[cfg(feature = "mock")] /// # #[cfg(feature = "mock")]
/// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, MockExecResult, Transaction, DatabaseBackend}; /// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, MockExecResult, Transaction, DbBackend};
/// # /// #
/// # let db = MockDatabase::new(DatabaseBackend::Postgres) /// # let db = MockDatabase::new(DbBackend::Postgres)
/// # .append_exec_results(vec![ /// # .append_exec_results(vec![
/// # MockExecResult { /// # MockExecResult {
/// # last_insert_id: 0, /// # last_insert_id: 0,
@ -380,7 +380,7 @@ pub trait EntityTrait: EntityName {
/// assert_eq!( /// assert_eq!(
/// db.into_transaction_log(), /// db.into_transaction_log(),
/// vec![Transaction::from_sql_and_values( /// vec![Transaction::from_sql_and_values(
/// DatabaseBackend::Postgres, r#"UPDATE "fruit" SET "name" = $1 WHERE "fruit"."id" = $2"#, vec!["Orange".into(), 1i32.into()] /// DbBackend::Postgres, r#"UPDATE "fruit" SET "name" = $1 WHERE "fruit"."id" = $2"#, vec!["Orange".into(), 1i32.into()]
/// )]); /// )]);
/// ``` /// ```
fn update<A>(model: A) -> UpdateOne<A> fn update<A>(model: A) -> UpdateOne<A>
@ -398,9 +398,9 @@ pub trait EntityTrait: EntityName {
/// ///
/// ``` /// ```
/// # #[cfg(feature = "mock")] /// # #[cfg(feature = "mock")]
/// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, MockExecResult, Transaction, DatabaseBackend}; /// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, MockExecResult, Transaction, DbBackend};
/// # /// #
/// # let db = MockDatabase::new(DatabaseBackend::Postgres) /// # let db = MockDatabase::new(DbBackend::Postgres)
/// # .append_exec_results(vec![ /// # .append_exec_results(vec![
/// # MockExecResult { /// # MockExecResult {
/// # last_insert_id: 0, /// # last_insert_id: 0,
@ -427,7 +427,7 @@ pub trait EntityTrait: EntityName {
/// assert_eq!( /// assert_eq!(
/// db.into_transaction_log(), /// db.into_transaction_log(),
/// vec![Transaction::from_sql_and_values( /// vec![Transaction::from_sql_and_values(
/// DatabaseBackend::Postgres, r#"UPDATE "fruit" SET "cake_id" = $1 WHERE "fruit"."name" LIKE $2"#, vec![Value::Null, "%Apple%".into()] /// DbBackend::Postgres, r#"UPDATE "fruit" SET "cake_id" = $1 WHERE "fruit"."name" LIKE $2"#, vec![Value::Null, "%Apple%".into()]
/// )]); /// )]);
/// ``` /// ```
fn update_many() -> UpdateMany<Self> { fn update_many() -> UpdateMany<Self> {
@ -442,9 +442,9 @@ pub trait EntityTrait: EntityName {
/// ///
/// ``` /// ```
/// # #[cfg(feature = "mock")] /// # #[cfg(feature = "mock")]
/// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, MockExecResult, Transaction, DatabaseBackend}; /// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, MockExecResult, Transaction, DbBackend};
/// # /// #
/// # let db = MockDatabase::new(DatabaseBackend::Postgres) /// # let db = MockDatabase::new(DbBackend::Postgres)
/// # .append_exec_results(vec![ /// # .append_exec_results(vec![
/// # MockExecResult { /// # MockExecResult {
/// # last_insert_id: 0, /// # last_insert_id: 0,
@ -472,7 +472,7 @@ pub trait EntityTrait: EntityName {
/// assert_eq!( /// assert_eq!(
/// db.into_transaction_log(), /// db.into_transaction_log(),
/// vec![Transaction::from_sql_and_values( /// vec![Transaction::from_sql_and_values(
/// DatabaseBackend::Postgres, r#"DELETE FROM "fruit" WHERE "fruit"."id" = $1"#, vec![3i32.into()] /// DbBackend::Postgres, r#"DELETE FROM "fruit" WHERE "fruit"."id" = $1"#, vec![3i32.into()]
/// )]); /// )]);
/// ``` /// ```
fn delete<A>(model: A) -> DeleteOne<A> fn delete<A>(model: A) -> DeleteOne<A>
@ -490,9 +490,9 @@ pub trait EntityTrait: EntityName {
/// ///
/// ``` /// ```
/// # #[cfg(feature = "mock")] /// # #[cfg(feature = "mock")]
/// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, MockExecResult, Transaction, DatabaseBackend}; /// # use sea_orm::{error::*, tests_cfg::*, MockDatabase, MockExecResult, Transaction, DbBackend};
/// # /// #
/// # let db = MockDatabase::new(DatabaseBackend::Postgres) /// # let db = MockDatabase::new(DbBackend::Postgres)
/// # .append_exec_results(vec![ /// # .append_exec_results(vec![
/// # MockExecResult { /// # MockExecResult {
/// # last_insert_id: 0, /// # last_insert_id: 0,
@ -518,7 +518,7 @@ pub trait EntityTrait: EntityName {
/// assert_eq!( /// assert_eq!(
/// db.into_transaction_log(), /// db.into_transaction_log(),
/// vec![Transaction::from_sql_and_values( /// vec![Transaction::from_sql_and_values(
/// DatabaseBackend::Postgres, r#"DELETE FROM "fruit" WHERE "fruit"."name" LIKE $1"#, vec!["%Apple%".into()] /// DbBackend::Postgres, r#"DELETE FROM "fruit" WHERE "fruit"."name" LIKE $1"#, vec!["%Apple%".into()]
/// )]); /// )]);
/// ``` /// ```
fn delete_many() -> DeleteMany<Self> { fn delete_many() -> DeleteMany<Self> {

View File

@ -88,12 +88,12 @@ pub trait ColumnTrait: IdenStatic + Iterable {
bind_oper!(lte); bind_oper!(lte);
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .filter(cake::Column::Id.between(2,3)) /// .filter(cake::Column::Id.between(2,3))
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`id` BETWEEN 2 AND 3" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`id` BETWEEN 2 AND 3"
/// ); /// );
@ -106,12 +106,12 @@ pub trait ColumnTrait: IdenStatic + Iterable {
} }
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .filter(cake::Column::Id.not_between(2,3)) /// .filter(cake::Column::Id.not_between(2,3))
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`id` NOT BETWEEN 2 AND 3" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`id` NOT BETWEEN 2 AND 3"
/// ); /// );
@ -124,12 +124,12 @@ pub trait ColumnTrait: IdenStatic + Iterable {
} }
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .filter(cake::Column::Name.like("cheese")) /// .filter(cake::Column::Name.like("cheese"))
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`name` LIKE 'cheese'" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`name` LIKE 'cheese'"
/// ); /// );
@ -139,12 +139,12 @@ pub trait ColumnTrait: IdenStatic + Iterable {
} }
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .filter(cake::Column::Name.not_like("cheese")) /// .filter(cake::Column::Name.not_like("cheese"))
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`name` NOT LIKE 'cheese'" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`name` NOT LIKE 'cheese'"
/// ); /// );
@ -154,12 +154,12 @@ pub trait ColumnTrait: IdenStatic + Iterable {
} }
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .filter(cake::Column::Name.starts_with("cheese")) /// .filter(cake::Column::Name.starts_with("cheese"))
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`name` LIKE 'cheese%'" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`name` LIKE 'cheese%'"
/// ); /// );
@ -170,12 +170,12 @@ pub trait ColumnTrait: IdenStatic + Iterable {
} }
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .filter(cake::Column::Name.ends_with("cheese")) /// .filter(cake::Column::Name.ends_with("cheese"))
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`name` LIKE '%cheese'" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`name` LIKE '%cheese'"
/// ); /// );
@ -186,12 +186,12 @@ pub trait ColumnTrait: IdenStatic + Iterable {
} }
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .filter(cake::Column::Name.contains("cheese")) /// .filter(cake::Column::Name.contains("cheese"))
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`name` LIKE '%cheese%'" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`name` LIKE '%cheese%'"
/// ); /// );

View File

@ -111,7 +111,7 @@ where
mod tests { mod tests {
use crate::entity::prelude::*; use crate::entity::prelude::*;
use crate::tests_cfg::*; use crate::tests_cfg::*;
use crate::{DatabaseBackend, DatabaseConnection, MockDatabase, Transaction}; use crate::{DbBackend, DatabaseConnection, MockDatabase, Transaction};
use futures::TryStreamExt; use futures::TryStreamExt;
use sea_query::{Alias, Expr, SelectStatement, Value}; use sea_query::{Alias, Expr, SelectStatement, Value};
@ -137,7 +137,7 @@ mod tests {
let page3 = Vec::<fruit::Model>::new(); let page3 = Vec::<fruit::Model>::new();
let db = MockDatabase::new(DatabaseBackend::Postgres) let db = MockDatabase::new(DbBackend::Postgres)
.append_query_results(vec![page1.clone(), page2.clone(), page3.clone()]) .append_query_results(vec![page1.clone(), page2.clone(), page3.clone()])
.into_connection(); .into_connection();
@ -146,7 +146,7 @@ mod tests {
fn setup_num_items() -> (DatabaseConnection, i32) { fn setup_num_items() -> (DatabaseConnection, i32) {
let num_items = 3; let num_items = 3;
let db = MockDatabase::new(DatabaseBackend::Postgres) let db = MockDatabase::new(DbBackend::Postgres)
.append_query_results(vec![vec![maplit::btreemap! { .append_query_results(vec![vec![maplit::btreemap! {
"num_items" => Into::<Value>::into(num_items), "num_items" => Into::<Value>::into(num_items),
}]]) }]])

View File

@ -113,7 +113,7 @@ where
#[cfg(test)] #[cfg(test)]
mod tests { mod tests {
use crate::tests_cfg::{cake, fruit}; use crate::tests_cfg::{cake, fruit};
use crate::{ColumnTrait, DatabaseBackend, EntityTrait, QueryFilter, QuerySelect, QueryTrait}; use crate::{ColumnTrait, DbBackend, EntityTrait, QueryFilter, QuerySelect, QueryTrait};
#[test] #[test]
fn alias_1() { fn alias_1() {
@ -121,7 +121,7 @@ mod tests {
cake::Entity::find() cake::Entity::find()
.column_as(cake::Column::Id, "B") .column_as(cake::Column::Id, "B")
.apply_alias("A_") .apply_alias("A_")
.build(DatabaseBackend::MySql) .build(DbBackend::MySql)
.to_string(), .to_string(),
"SELECT `cake`.`id` AS `A_id`, `cake`.`name` AS `A_name`, `cake`.`id` AS `A_B` FROM `cake`", "SELECT `cake`.`id` AS `A_id`, `cake`.`name` AS `A_name`, `cake`.`id` AS `A_B` FROM `cake`",
); );
@ -133,7 +133,7 @@ mod tests {
cake::Entity::find() cake::Entity::find()
.left_join(fruit::Entity) .left_join(fruit::Entity)
.select_also(fruit::Entity) .select_also(fruit::Entity)
.build(DatabaseBackend::MySql) .build(DbBackend::MySql)
.to_string(), .to_string(),
[ [
"SELECT `cake`.`id` AS `A_id`, `cake`.`name` AS `A_name`,", "SELECT `cake`.`id` AS `A_id`, `cake`.`name` AS `A_name`,",
@ -149,7 +149,7 @@ mod tests {
cake::Entity::find() cake::Entity::find()
.left_join(fruit::Entity) .left_join(fruit::Entity)
.select_with(fruit::Entity) .select_with(fruit::Entity)
.build(DatabaseBackend::MySql) .build(DbBackend::MySql)
.to_string(), .to_string(),
[ [
"SELECT `cake`.`id` AS `A_id`, `cake`.`name` AS `A_name`,", "SELECT `cake`.`id` AS `A_id`, `cake`.`name` AS `A_name`,",
@ -168,7 +168,7 @@ mod tests {
.select_also(fruit::Entity) .select_also(fruit::Entity)
.filter(cake::Column::Id.eq(1)) .filter(cake::Column::Id.eq(1))
.filter(fruit::Column::Id.eq(2)) .filter(fruit::Column::Id.eq(2))
.build(DatabaseBackend::MySql) .build(DbBackend::MySql)
.to_string(), .to_string(),
[ [
"SELECT `cake`.`id` AS `A_id`, `cake`.`name` AS `A_name`,", "SELECT `cake`.`id` AS `A_id`, `cake`.`name` AS `A_name`,",
@ -187,7 +187,7 @@ mod tests {
.select_with(fruit::Entity) .select_with(fruit::Entity)
.filter(cake::Column::Id.eq(1)) .filter(cake::Column::Id.eq(1))
.filter(fruit::Column::Id.eq(2)) .filter(fruit::Column::Id.eq(2))
.build(DatabaseBackend::MySql) .build(DbBackend::MySql)
.to_string(), .to_string(),
[ [
"SELECT `cake`.`id` AS `A_id`, `cake`.`name` AS `A_name`,", "SELECT `cake`.`id` AS `A_id`, `cake`.`name` AS `A_name`,",

View File

@ -31,28 +31,28 @@ impl Delete {
/// ///
/// Model /// Model
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// Delete::one(cake::Model { /// Delete::one(cake::Model {
/// id: 1, /// id: 1,
/// name: "Apple Pie".to_owned(), /// name: "Apple Pie".to_owned(),
/// }) /// })
/// .build(DatabaseBackend::Postgres) /// .build(DbBackend::Postgres)
/// .to_string(), /// .to_string(),
/// r#"DELETE FROM "cake" WHERE "cake"."id" = 1"#, /// r#"DELETE FROM "cake" WHERE "cake"."id" = 1"#,
/// ); /// );
/// ``` /// ```
/// ActiveModel /// ActiveModel
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// Delete::one(cake::ActiveModel { /// Delete::one(cake::ActiveModel {
/// id: ActiveValue::set(1), /// id: ActiveValue::set(1),
/// name: ActiveValue::set("Apple Pie".to_owned()), /// name: ActiveValue::set("Apple Pie".to_owned()),
/// }) /// })
/// .build(DatabaseBackend::Postgres) /// .build(DbBackend::Postgres)
/// .to_string(), /// .to_string(),
/// r#"DELETE FROM "cake" WHERE "cake"."id" = 1"#, /// r#"DELETE FROM "cake" WHERE "cake"."id" = 1"#,
/// ); /// );
@ -75,12 +75,12 @@ impl Delete {
/// Delete many ActiveModel /// Delete many ActiveModel
/// ///
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::fruit, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::fruit, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// Delete::many(fruit::Entity) /// Delete::many(fruit::Entity)
/// .filter(fruit::Column::Name.contains("Apple")) /// .filter(fruit::Column::Name.contains("Apple"))
/// .build(DatabaseBackend::Postgres) /// .build(DbBackend::Postgres)
/// .to_string(), /// .to_string(),
/// r#"DELETE FROM "fruit" WHERE "fruit"."name" LIKE '%Apple%'"#, /// r#"DELETE FROM "fruit" WHERE "fruit"."name" LIKE '%Apple%'"#,
/// ); /// );
@ -179,7 +179,7 @@ where
#[cfg(test)] #[cfg(test)]
mod tests { mod tests {
use crate::tests_cfg::{cake, fruit}; use crate::tests_cfg::{cake, fruit};
use crate::{entity::*, query::*, DatabaseBackend}; use crate::{entity::*, query::*, DbBackend};
#[test] #[test]
fn delete_1() { fn delete_1() {
@ -188,7 +188,7 @@ mod tests {
id: 1, id: 1,
name: "Apple Pie".to_owned(), name: "Apple Pie".to_owned(),
}) })
.build(DatabaseBackend::Postgres) .build(DbBackend::Postgres)
.to_string(), .to_string(),
r#"DELETE FROM "cake" WHERE "cake"."id" = 1"#, r#"DELETE FROM "cake" WHERE "cake"."id" = 1"#,
); );
@ -197,7 +197,7 @@ mod tests {
id: ActiveValue::set(1), id: ActiveValue::set(1),
name: ActiveValue::set("Apple Pie".to_owned()), name: ActiveValue::set("Apple Pie".to_owned()),
}) })
.build(DatabaseBackend::Postgres) .build(DbBackend::Postgres)
.to_string(), .to_string(),
r#"DELETE FROM "cake" WHERE "cake"."id" = 1"#, r#"DELETE FROM "cake" WHERE "cake"."id" = 1"#,
); );
@ -208,7 +208,7 @@ mod tests {
assert_eq!( assert_eq!(
Delete::many(fruit::Entity) Delete::many(fruit::Entity)
.filter(fruit::Column::Name.contains("Cheese")) .filter(fruit::Column::Name.contains("Cheese"))
.build(DatabaseBackend::Postgres) .build(DbBackend::Postgres)
.to_string(), .to_string(),
r#"DELETE FROM "fruit" WHERE "fruit"."name" LIKE '%Cheese%'"#, r#"DELETE FROM "fruit" WHERE "fruit"."name" LIKE '%Cheese%'"#,
); );

View File

@ -23,13 +23,13 @@ pub trait QuerySelect: Sized {
/// Add a select column /// Add a select column
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .select_only() /// .select_only()
/// .column(cake::Column::Name) /// .column(cake::Column::Name)
/// .build(DatabaseBackend::Postgres) /// .build(DbBackend::Postgres)
/// .to_string(), /// .to_string(),
/// r#"SELECT "cake"."name" FROM "cake""# /// r#"SELECT "cake"."name" FROM "cake""#
/// ); /// );
@ -44,13 +44,13 @@ pub trait QuerySelect: Sized {
/// Add a select column with alias /// Add a select column with alias
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .select_only() /// .select_only()
/// .column_as(cake::Column::Id.count(), "count") /// .column_as(cake::Column::Id.count(), "count")
/// .build(DatabaseBackend::Postgres) /// .build(DbBackend::Postgres)
/// .to_string(), /// .to_string(),
/// r#"SELECT COUNT("cake"."id") AS "count" FROM "cake""# /// r#"SELECT COUNT("cake"."id") AS "count" FROM "cake""#
/// ); /// );
@ -68,14 +68,14 @@ pub trait QuerySelect: Sized {
/// Add a group by column /// Add a group by column
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .select_only() /// .select_only()
/// .column(cake::Column::Name) /// .column(cake::Column::Name)
/// .group_by(cake::Column::Name) /// .group_by(cake::Column::Name)
/// .build(DatabaseBackend::Postgres) /// .build(DbBackend::Postgres)
/// .to_string(), /// .to_string(),
/// r#"SELECT "cake"."name" FROM "cake" GROUP BY "cake"."name""# /// r#"SELECT "cake"."name" FROM "cake" GROUP BY "cake"."name""#
/// ); /// );
@ -90,13 +90,13 @@ pub trait QuerySelect: Sized {
/// Add an AND HAVING expression /// Add an AND HAVING expression
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .having(cake::Column::Id.eq(4)) /// .having(cake::Column::Id.eq(4))
/// .having(cake::Column::Id.eq(5)) /// .having(cake::Column::Id.eq(5))
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` HAVING `cake`.`id` = 4 AND `cake`.`id` = 5" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` HAVING `cake`.`id` = 4 AND `cake`.`id` = 5"
/// ); /// );
@ -151,13 +151,13 @@ pub trait QueryOrder: Sized {
/// Add an order_by expression /// Add an order_by expression
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .order_by(cake::Column::Id, Order::Asc) /// .order_by(cake::Column::Id, Order::Asc)
/// .order_by(cake::Column::Name, Order::Desc) /// .order_by(cake::Column::Name, Order::Desc)
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` ORDER BY `cake`.`id` ASC, `cake`.`name` DESC" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` ORDER BY `cake`.`id` ASC, `cake`.`name` DESC"
/// ); /// );
@ -172,12 +172,12 @@ pub trait QueryOrder: Sized {
/// Add an order_by expression (ascending) /// Add an order_by expression (ascending)
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .order_by_asc(cake::Column::Id) /// .order_by_asc(cake::Column::Id)
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` ORDER BY `cake`.`id` ASC" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` ORDER BY `cake`.`id` ASC"
/// ); /// );
@ -193,12 +193,12 @@ pub trait QueryOrder: Sized {
/// Add an order_by expression (descending) /// Add an order_by expression (descending)
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .order_by_desc(cake::Column::Id) /// .order_by_desc(cake::Column::Id)
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` ORDER BY `cake`.`id` DESC" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` ORDER BY `cake`.`id` DESC"
/// ); /// );
@ -221,13 +221,13 @@ pub trait QueryFilter: Sized {
/// Add an AND WHERE expression /// Add an AND WHERE expression
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
/// .filter(cake::Column::Id.eq(4)) /// .filter(cake::Column::Id.eq(4))
/// .filter(cake::Column::Id.eq(5)) /// .filter(cake::Column::Id.eq(5))
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`id` = 4 AND `cake`.`id` = 5" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`id` = 4 AND `cake`.`id` = 5"
/// ); /// );
@ -235,7 +235,7 @@ pub trait QueryFilter: Sized {
/// ///
/// Add a condition tree. /// Add a condition tree.
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// cake::Entity::find() /// cake::Entity::find()
@ -244,7 +244,7 @@ pub trait QueryFilter: Sized {
/// .add(cake::Column::Id.eq(4)) /// .add(cake::Column::Id.eq(4))
/// .add(cake::Column::Id.eq(5)) /// .add(cake::Column::Id.eq(5))
/// ) /// )
/// .build(DatabaseBackend::MySql) /// .build(DbBackend::MySql)
/// .to_string(), /// .to_string(),
/// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`id` = 4 OR `cake`.`id` = 5" /// "SELECT `cake`.`id`, `cake`.`name` FROM `cake` WHERE `cake`.`id` = 4 OR `cake`.`id` = 5"
/// ); /// );

View File

@ -39,28 +39,28 @@ where
/// ///
/// Model /// Model
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// Insert::one(cake::Model { /// Insert::one(cake::Model {
/// id: 1, /// id: 1,
/// name: "Apple Pie".to_owned(), /// name: "Apple Pie".to_owned(),
/// }) /// })
/// .build(DatabaseBackend::Postgres) /// .build(DbBackend::Postgres)
/// .to_string(), /// .to_string(),
/// r#"INSERT INTO "cake" ("id", "name") VALUES (1, 'Apple Pie')"#, /// r#"INSERT INTO "cake" ("id", "name") VALUES (1, 'Apple Pie')"#,
/// ); /// );
/// ``` /// ```
/// ActiveModel /// ActiveModel
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// Insert::one(cake::ActiveModel { /// Insert::one(cake::ActiveModel {
/// id: Unset(None), /// id: Unset(None),
/// name: Set("Apple Pie".to_owned()), /// name: Set("Apple Pie".to_owned()),
/// }) /// })
/// .build(DatabaseBackend::Postgres) /// .build(DbBackend::Postgres)
/// .to_string(), /// .to_string(),
/// r#"INSERT INTO "cake" ("name") VALUES ('Apple Pie')"#, /// r#"INSERT INTO "cake" ("name") VALUES ('Apple Pie')"#,
/// ); /// );
@ -75,7 +75,7 @@ where
/// Insert many Model or ActiveModel /// Insert many Model or ActiveModel
/// ///
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// Insert::many(vec![ /// Insert::many(vec![
@ -88,7 +88,7 @@ where
/// name: "Orange Scone".to_owned(), /// name: "Orange Scone".to_owned(),
/// } /// }
/// ]) /// ])
/// .build(DatabaseBackend::Postgres) /// .build(DbBackend::Postgres)
/// .to_string(), /// .to_string(),
/// r#"INSERT INTO "cake" ("id", "name") VALUES (1, 'Apple Pie'), (2, 'Orange Scone')"#, /// r#"INSERT INTO "cake" ("id", "name") VALUES (1, 'Apple Pie'), (2, 'Orange Scone')"#,
/// ); /// );
@ -162,7 +162,7 @@ where
#[cfg(test)] #[cfg(test)]
mod tests { mod tests {
use crate::tests_cfg::cake; use crate::tests_cfg::cake;
use crate::{ActiveValue, DatabaseBackend, Insert, QueryTrait}; use crate::{ActiveValue, DbBackend, Insert, QueryTrait};
#[test] #[test]
fn insert_1() { fn insert_1() {
@ -172,7 +172,7 @@ mod tests {
id: ActiveValue::unset(), id: ActiveValue::unset(),
name: ActiveValue::set("Apple Pie".to_owned()), name: ActiveValue::set("Apple Pie".to_owned()),
}) })
.build(DatabaseBackend::Postgres) .build(DbBackend::Postgres)
.to_string(), .to_string(),
r#"INSERT INTO "cake" ("name") VALUES ('Apple Pie')"#, r#"INSERT INTO "cake" ("name") VALUES ('Apple Pie')"#,
); );
@ -186,7 +186,7 @@ mod tests {
id: ActiveValue::set(1), id: ActiveValue::set(1),
name: ActiveValue::set("Apple Pie".to_owned()), name: ActiveValue::set("Apple Pie".to_owned()),
}) })
.build(DatabaseBackend::Postgres) .build(DbBackend::Postgres)
.to_string(), .to_string(),
r#"INSERT INTO "cake" ("id", "name") VALUES (1, 'Apple Pie')"#, r#"INSERT INTO "cake" ("id", "name") VALUES (1, 'Apple Pie')"#,
); );
@ -200,7 +200,7 @@ mod tests {
id: 1, id: 1,
name: "Apple Pie".to_owned(), name: "Apple Pie".to_owned(),
}) })
.build(DatabaseBackend::Postgres) .build(DbBackend::Postgres)
.to_string(), .to_string(),
r#"INSERT INTO "cake" ("id", "name") VALUES (1, 'Apple Pie')"#, r#"INSERT INTO "cake" ("id", "name") VALUES (1, 'Apple Pie')"#,
); );
@ -220,7 +220,7 @@ mod tests {
name: "Orange Scone".to_owned(), name: "Orange Scone".to_owned(),
} }
]) ])
.build(DatabaseBackend::Postgres) .build(DbBackend::Postgres)
.to_string(), .to_string(),
r#"INSERT INTO "cake" ("id", "name") VALUES (1, 'Apple Pie'), (2, 'Orange Scone')"#, r#"INSERT INTO "cake" ("id", "name") VALUES (1, 'Apple Pie'), (2, 'Orange Scone')"#,
); );
@ -240,7 +240,7 @@ mod tests {
assert_eq!( assert_eq!(
Insert::<cake::ActiveModel>::new() Insert::<cake::ActiveModel>::new()
.add_many(vec![apple, orange]) .add_many(vec![apple, orange])
.build(DatabaseBackend::Postgres) .build(DbBackend::Postgres)
.to_string(), .to_string(),
r#"INSERT INTO "cake" ("id", "name") VALUES (NULL, 'Apple'), (2, 'Orange')"#, r#"INSERT INTO "cake" ("id", "name") VALUES (NULL, 'Apple'), (2, 'Orange')"#,
); );

View File

@ -62,14 +62,14 @@ where
#[cfg(test)] #[cfg(test)]
mod tests { mod tests {
use crate::tests_cfg::{cake, filling, fruit}; use crate::tests_cfg::{cake, filling, fruit};
use crate::{ColumnTrait, DatabaseBackend, EntityTrait, ModelTrait, QueryFilter, QueryTrait}; use crate::{ColumnTrait, DbBackend, EntityTrait, ModelTrait, QueryFilter, QueryTrait};
#[test] #[test]
fn join_1() { fn join_1() {
assert_eq!( assert_eq!(
cake::Entity::find() cake::Entity::find()
.left_join(fruit::Entity) .left_join(fruit::Entity)
.build(DatabaseBackend::MySql) .build(DbBackend::MySql)
.to_string(), .to_string(),
[ [
"SELECT `cake`.`id`, `cake`.`name` FROM `cake`", "SELECT `cake`.`id`, `cake`.`name` FROM `cake`",
@ -85,7 +85,7 @@ mod tests {
cake::Entity::find() cake::Entity::find()
.inner_join(fruit::Entity) .inner_join(fruit::Entity)
.filter(fruit::Column::Name.contains("cherry")) .filter(fruit::Column::Name.contains("cherry"))
.build(DatabaseBackend::MySql) .build(DbBackend::MySql)
.to_string(), .to_string(),
[ [
"SELECT `cake`.`id`, `cake`.`name` FROM `cake`", "SELECT `cake`.`id`, `cake`.`name` FROM `cake`",
@ -101,7 +101,7 @@ mod tests {
assert_eq!( assert_eq!(
fruit::Entity::find() fruit::Entity::find()
.reverse_join(cake::Entity) .reverse_join(cake::Entity)
.build(DatabaseBackend::MySql) .build(DbBackend::MySql)
.to_string(), .to_string(),
[ [
"SELECT `fruit`.`id`, `fruit`.`name`, `fruit`.`cake_id` FROM `fruit`", "SELECT `fruit`.`id`, `fruit`.`name`, `fruit`.`cake_id` FROM `fruit`",
@ -119,7 +119,7 @@ mod tests {
assert_eq!( assert_eq!(
find_fruit find_fruit
.filter(cake::Column::Id.eq(11)) .filter(cake::Column::Id.eq(11))
.build(DatabaseBackend::MySql) .build(DbBackend::MySql)
.to_string(), .to_string(),
[ [
"SELECT `fruit`.`id`, `fruit`.`name`, `fruit`.`cake_id` FROM `fruit`", "SELECT `fruit`.`id`, `fruit`.`name`, `fruit`.`cake_id` FROM `fruit`",
@ -140,7 +140,7 @@ mod tests {
assert_eq!( assert_eq!(
cake_model cake_model
.find_related(fruit::Entity) .find_related(fruit::Entity)
.build(DatabaseBackend::MySql) .build(DbBackend::MySql)
.to_string(), .to_string(),
[ [
"SELECT `fruit`.`id`, `fruit`.`name`, `fruit`.`cake_id` FROM `fruit`", "SELECT `fruit`.`id`, `fruit`.`name`, `fruit`.`cake_id` FROM `fruit`",
@ -156,7 +156,7 @@ mod tests {
assert_eq!( assert_eq!(
cake::Entity::find() cake::Entity::find()
.left_join(filling::Entity) .left_join(filling::Entity)
.build(DatabaseBackend::MySql) .build(DbBackend::MySql)
.to_string(), .to_string(),
[ [
"SELECT `cake`.`id`, `cake`.`name` FROM `cake`", "SELECT `cake`.`id`, `cake`.`name` FROM `cake`",
@ -173,7 +173,7 @@ mod tests {
let find_filling: Select<filling::Entity> = cake::Entity::find_related(); let find_filling: Select<filling::Entity> = cake::Entity::find_related();
assert_eq!( assert_eq!(
find_filling.build(DatabaseBackend::MySql).to_string(), find_filling.build(DbBackend::MySql).to_string(),
[ [
"SELECT `filling`.`id`, `filling`.`name` FROM `filling`", "SELECT `filling`.`id`, `filling`.`name` FROM `filling`",
"INNER JOIN `cake_filling` ON `cake_filling`.`filling_id` = `filling`.`id`", "INNER JOIN `cake_filling` ON `cake_filling`.`filling_id` = `filling`.`id`",

View File

@ -102,12 +102,12 @@ impl FromQueryResult for JsonValue {
#[cfg(feature = "mock")] #[cfg(feature = "mock")]
mod tests { mod tests {
use crate::tests_cfg::cake; use crate::tests_cfg::cake;
use crate::{entity::*, DatabaseBackend, MockDatabase}; use crate::{entity::*, DbBackend, MockDatabase};
use sea_query::Value; use sea_query::Value;
#[async_std::test] #[async_std::test]
async fn to_json_1() { async fn to_json_1() {
let db = MockDatabase::new(DatabaseBackend::Postgres) let db = MockDatabase::new(DbBackend::Postgres)
.append_query_results(vec![vec![maplit::btreemap! { .append_query_results(vec![vec![maplit::btreemap! {
"id" => Into::<Value>::into(128), "name" => Into::<Value>::into("apple") "id" => Into::<Value>::into(128), "name" => Into::<Value>::into("apple")
}]]) }]])

View File

@ -1,4 +1,4 @@
use crate::{DatabaseBackend, Statement}; use crate::{DbBackend, Statement};
use sea_query::QueryStatementBuilder; use sea_query::QueryStatementBuilder;
pub trait QueryTrait { pub trait QueryTrait {
@ -14,7 +14,7 @@ pub trait QueryTrait {
fn into_query(self) -> Self::QueryStatement; fn into_query(self) -> Self::QueryStatement;
/// Build the query as [`Statement`] /// Build the query as [`Statement`]
fn build(&self, db_backend: DatabaseBackend) -> Statement { fn build(&self, db_backend: DbBackend) -> Statement {
let query_builder = db_backend.get_query_builder(); let query_builder = db_backend.get_query_builder();
Statement::from_string_values_tuple( Statement::from_string_values_tuple(
db_backend, db_backend,

View File

@ -30,14 +30,14 @@ impl Update {
/// Update one ActiveModel /// Update one ActiveModel
/// ///
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::cake, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::cake, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// Update::one(cake::ActiveModel { /// Update::one(cake::ActiveModel {
/// id: ActiveValue::set(1), /// id: ActiveValue::set(1),
/// name: ActiveValue::set("Apple Pie".to_owned()), /// name: ActiveValue::set("Apple Pie".to_owned()),
/// }) /// })
/// .build(DatabaseBackend::Postgres) /// .build(DbBackend::Postgres)
/// .to_string(), /// .to_string(),
/// r#"UPDATE "cake" SET "name" = 'Apple Pie' WHERE "cake"."id" = 1"#, /// r#"UPDATE "cake" SET "name" = 'Apple Pie' WHERE "cake"."id" = 1"#,
/// ); /// );
@ -59,13 +59,13 @@ impl Update {
/// Update many ActiveModel /// Update many ActiveModel
/// ///
/// ``` /// ```
/// use sea_orm::{entity::*, query::*, tests_cfg::fruit, sea_query::Expr, DatabaseBackend}; /// use sea_orm::{entity::*, query::*, tests_cfg::fruit, sea_query::Expr, DbBackend};
/// ///
/// assert_eq!( /// assert_eq!(
/// Update::many(fruit::Entity) /// Update::many(fruit::Entity)
/// .col_expr(fruit::Column::Name, Expr::value("Golden Apple")) /// .col_expr(fruit::Column::Name, Expr::value("Golden Apple"))
/// .filter(fruit::Column::Name.contains("Apple")) /// .filter(fruit::Column::Name.contains("Apple"))
/// .build(DatabaseBackend::Postgres) /// .build(DbBackend::Postgres)
/// .to_string(), /// .to_string(),
/// r#"UPDATE "fruit" SET "name" = 'Golden Apple' WHERE "fruit"."name" LIKE '%Apple%'"#, /// r#"UPDATE "fruit" SET "name" = 'Golden Apple' WHERE "fruit"."name" LIKE '%Apple%'"#,
/// ); /// );
@ -184,7 +184,7 @@ where
#[cfg(test)] #[cfg(test)]
mod tests { mod tests {
use crate::tests_cfg::{cake, fruit}; use crate::tests_cfg::{cake, fruit};
use crate::{entity::*, query::*, DatabaseBackend}; use crate::{entity::*, query::*, DbBackend};
use sea_query::{Expr, Value}; use sea_query::{Expr, Value};
#[test] #[test]
@ -194,7 +194,7 @@ mod tests {
id: ActiveValue::set(1), id: ActiveValue::set(1),
name: ActiveValue::set("Apple Pie".to_owned()), name: ActiveValue::set("Apple Pie".to_owned()),
}) })
.build(DatabaseBackend::Postgres) .build(DbBackend::Postgres)
.to_string(), .to_string(),
r#"UPDATE "cake" SET "name" = 'Apple Pie' WHERE "cake"."id" = 1"#, r#"UPDATE "cake" SET "name" = 'Apple Pie' WHERE "cake"."id" = 1"#,
); );
@ -208,7 +208,7 @@ mod tests {
name: ActiveValue::set("Orange".to_owned()), name: ActiveValue::set("Orange".to_owned()),
cake_id: ActiveValue::unset(), cake_id: ActiveValue::unset(),
}) })
.build(DatabaseBackend::Postgres) .build(DbBackend::Postgres)
.to_string(), .to_string(),
r#"UPDATE "fruit" SET "name" = 'Orange' WHERE "fruit"."id" = 1"#, r#"UPDATE "fruit" SET "name" = 'Orange' WHERE "fruit"."id" = 1"#,
); );
@ -222,7 +222,7 @@ mod tests {
name: ActiveValue::unchanged("Apple".to_owned()), name: ActiveValue::unchanged("Apple".to_owned()),
cake_id: ActiveValue::set(Some(3)), cake_id: ActiveValue::set(Some(3)),
}) })
.build(DatabaseBackend::Postgres) .build(DbBackend::Postgres)
.to_string(), .to_string(),
r#"UPDATE "fruit" SET "cake_id" = 3 WHERE "fruit"."id" = 2"#, r#"UPDATE "fruit" SET "cake_id" = 3 WHERE "fruit"."id" = 2"#,
); );
@ -234,7 +234,7 @@ mod tests {
Update::many(fruit::Entity) Update::many(fruit::Entity)
.col_expr(fruit::Column::CakeId, Expr::value(Value::Null)) .col_expr(fruit::Column::CakeId, Expr::value(Value::Null))
.filter(fruit::Column::Id.eq(2)) .filter(fruit::Column::Id.eq(2))
.build(DatabaseBackend::Postgres) .build(DbBackend::Postgres)
.to_string(), .to_string(),
r#"UPDATE "fruit" SET "cake_id" = NULL WHERE "fruit"."id" = 2"#, r#"UPDATE "fruit" SET "cake_id" = NULL WHERE "fruit"."id" = 2"#,
); );

View File

@ -1,4 +1,4 @@
use sea_orm::{entity::*, error::*, sea_query, tests_cfg::*, DatabaseBackend, DbConn, Statement}; use sea_orm::{entity::*, error::*, sea_query, tests_cfg::*, DbBackend, DbConn, Statement};
mod setup; mod setup;
@ -28,7 +28,7 @@ async fn setup_schema(db: &DbConn) {
.build(SqliteQueryBuilder); .build(SqliteQueryBuilder);
let result = db let result = db
.execute(Statement::from_string(DatabaseBackend::Sqlite, stmt)) .execute(Statement::from_string(DbBackend::Sqlite, stmt))
.await; .await;
println!("Create table cake: {:?}", result); println!("Create table cake: {:?}", result);
} }