sqlxplus/
database_type.rs1pub trait DatabaseType {
6 type DB: sqlx::Database + crate::database_info::DatabaseInfo;
8}
9
10#[cfg(feature = "mysql")]
12impl DatabaseType for sqlx::Pool<sqlx::MySql> {
13 type DB = sqlx::MySql;
14}
15
16#[cfg(feature = "postgres")]
17impl DatabaseType for sqlx::Pool<sqlx::Postgres> {
18 type DB = sqlx::Postgres;
19}
20
21#[cfg(feature = "sqlite")]
22impl DatabaseType for sqlx::Pool<sqlx::Sqlite> {
23 type DB = sqlx::Sqlite;
24}
25
26#[cfg(feature = "mysql")]
28impl DatabaseType for &sqlx::Pool<sqlx::MySql> {
29 type DB = sqlx::MySql;
30}
31
32#[cfg(feature = "postgres")]
33impl DatabaseType for &sqlx::Pool<sqlx::Postgres> {
34 type DB = sqlx::Postgres;
35}
36
37#[cfg(feature = "sqlite")]
38impl DatabaseType for &sqlx::Pool<sqlx::Sqlite> {
39 type DB = sqlx::Sqlite;
40}
41
42#[cfg(feature = "mysql")]
44impl<'tx> DatabaseType for &mut sqlx::Transaction<'tx, sqlx::MySql> {
45 type DB = sqlx::MySql;
46}
47
48#[cfg(feature = "postgres")]
49impl<'tx> DatabaseType for &mut sqlx::Transaction<'tx, sqlx::Postgres> {
50 type DB = sqlx::Postgres;
51}
52
53#[cfg(feature = "sqlite")]
54impl<'tx> DatabaseType for &mut sqlx::Transaction<'tx, sqlx::Sqlite> {
55 type DB = sqlx::Sqlite;
56}
57
58#[cfg(feature = "mysql")]
60impl DatabaseType for sqlx::MySqlConnection {
61 type DB = sqlx::MySql;
62}
63
64#[cfg(feature = "mysql")]
65impl DatabaseType for &mut sqlx::MySqlConnection {
66 type DB = sqlx::MySql;
67}
68
69#[cfg(feature = "postgres")]
70impl DatabaseType for sqlx::PgConnection {
71 type DB = sqlx::Postgres;
72}
73
74#[cfg(feature = "postgres")]
75impl DatabaseType for &mut sqlx::PgConnection {
76 type DB = sqlx::Postgres;
77}
78
79#[cfg(feature = "sqlite")]
80impl DatabaseType for sqlx::SqliteConnection {
81 type DB = sqlx::Sqlite;
82}
83
84#[cfg(feature = "sqlite")]
85impl DatabaseType for &mut sqlx::SqliteConnection {
86 type DB = sqlx::Sqlite;
87}