1#![cfg_attr(docsrs, feature(doc_cfg))]
2
3#[cfg(any(feature = "runtime-async-std", feature = "runtime-tokio"))]
4compile_error!(
5 "the features 'runtime-actix', 'runtime-async-std' and 'runtime-tokio' have been removed in
6 favor of new features 'runtime-{rt}-{tls}' where rt is one of 'actix', 'async-std' and 'tokio'
7 and 'tls' is one of 'native-tls' and 'rustls'."
8);
9
10pub use sqlx_core::acquire::Acquire;
11pub use sqlx_core::arguments::{Arguments, IntoArguments};
12pub use sqlx_core::column::Column;
13pub use sqlx_core::column::ColumnIndex;
14pub use sqlx_core::connection::{ConnectOptions, Connection};
15pub use sqlx_core::database::{self, Database};
16pub use sqlx_core::describe::Describe;
17pub use sqlx_core::executor::{Execute, Executor};
18pub use sqlx_core::from_row::FromRow;
19pub use sqlx_core::pool::{self, Pool};
20pub use sqlx_core::query::{query, query_with};
21pub use sqlx_core::query_as::{query_as, query_as_with};
22pub use sqlx_core::query_builder::{self, QueryBuilder};
23pub use sqlx_core::query_scalar::{query_scalar, query_scalar_with};
24pub use sqlx_core::row::Row;
25pub use sqlx_core::statement::Statement;
26pub use sqlx_core::transaction::{Transaction, TransactionManager};
27pub use sqlx_core::type_info::TypeInfo;
28pub use sqlx_core::types::Type;
29pub use sqlx_core::value::{Value, ValueRef};
30pub use sqlx_core::Either;
31
32#[doc(inline)]
33pub use sqlx_core::error::{self, Error, Result};
34
35#[cfg(feature = "migrate")]
36pub use sqlx_core::migrate;
37
38#[cfg(all(
39 any(
40 feature = "mysql",
41 feature = "sqlite",
42 feature = "postgres",
43 feature = "mssql",
44 feature = "odbc"
45 ),
46 feature = "any"
47))]
48pub use sqlx_core::any::{self, Any, AnyConnection, AnyExecutor, AnyPool};
49
50#[cfg(feature = "mysql")]
51#[cfg_attr(docsrs, doc(cfg(feature = "mysql")))]
52pub use sqlx_core::mysql::{self, MySql, MySqlConnection, MySqlExecutor, MySqlPool};
53
54#[cfg(feature = "mssql")]
55#[cfg_attr(docsrs, doc(cfg(feature = "mssql")))]
56pub use sqlx_core::mssql::{self, Mssql, MssqlConnection, MssqlExecutor, MssqlPool};
57
58#[cfg(feature = "postgres")]
59#[cfg_attr(docsrs, doc(cfg(feature = "postgres")))]
60pub use sqlx_core::postgres::{self, PgConnection, PgExecutor, PgPool, Postgres};
61
62#[cfg(feature = "sqlite")]
63#[cfg_attr(docsrs, doc(cfg(feature = "sqlite")))]
64pub use sqlx_core::sqlite::{self, Sqlite, SqliteConnection, SqliteExecutor, SqlitePool};
65
66#[cfg(feature = "odbc")]
67#[cfg_attr(docsrs, doc(cfg(feature = "odbc")))]
68pub use sqlx_core::odbc::{self, Odbc, OdbcConnection, OdbcExecutor, OdbcPool};
69
70#[cfg(feature = "macros")]
71#[doc(hidden)]
72pub extern crate sqlx_macros;
73
74#[cfg(feature = "macros")]
76#[doc(hidden)]
77pub use sqlx_macros::{FromRow, Type};
78
79#[doc = include_str!("macros/test.md")]
82pub use sqlx_macros::test;
83
84#[doc(hidden)]
85#[cfg(feature = "migrate")]
86pub use sqlx_core::testing;
87
88#[doc(hidden)]
89pub use sqlx_core::test_block_on;
90
91#[cfg(feature = "macros")]
92mod macros;
93
94#[cfg(feature = "macros")]
96#[doc(hidden)]
97pub mod ty_match;
98
99pub mod types {
115 pub use sqlx_core::types::*;
116
117 #[cfg(feature = "macros")]
118 #[doc(hidden)]
119 pub use sqlx_macros::Type;
120}
121
122pub mod encode {
124 pub use sqlx_core::encode::{Encode, IsNull};
125
126 #[cfg(feature = "macros")]
127 #[doc(hidden)]
128 pub use sqlx_macros::Encode;
129}
130
131pub use self::encode::Encode;
132
133pub mod decode {
135 pub use sqlx_core::decode::Decode;
136
137 #[cfg(feature = "macros")]
138 #[doc(hidden)]
139 pub use sqlx_macros::Decode;
140}
141
142pub use self::decode::Decode;
143
144pub mod query {
146 pub use sqlx_core::query::{Map, Query};
147 pub use sqlx_core::query_as::QueryAs;
148 pub use sqlx_core::query_scalar::QueryScalar;
149}
150
151pub mod prelude {
153 pub use super::Acquire;
154 pub use super::ConnectOptions;
155 pub use super::Connection;
156 pub use super::Decode;
157 pub use super::Encode;
158 pub use super::Executor;
159 pub use super::FromRow;
160 pub use super::IntoArguments;
161 pub use super::Row;
162 pub use super::Statement;
163 pub use super::Type;
164}
165
166#[doc(hidden)]
167#[inline(always)]
168#[deprecated = "`#[sqlx(rename = \"...\")]` is now `#[sqlx(type_name = \"...\")`"]
169pub fn _rename() {}