1#![doc = include_str!("install_drivers_note.md")]
3
4use std::sync::Once;
5
6pub use sqlx_core::any::driver::install_drivers;
7
8pub use sqlx_core::any::{
9 Any, AnyArguments, AnyConnectOptions, AnyExecutor, AnyPoolOptions, AnyQueryResult, AnyRow,
10 AnyStatement, AnyTransactionManager, AnyTypeInfo, AnyTypeInfoKind, AnyValue, AnyValueRef,
11};
12
13#[allow(deprecated)]
14pub use sqlx_core::any::AnyKind;
15
16pub(crate) mod reexports {
17 #[doc = include_str!("install_drivers_note.md")]
19 pub use sqlx_core::any::AnyPool;
20
21 #[doc = include_str!("install_drivers_note.md")]
23 pub use sqlx_core::any::AnyConnection;
24}
25
26pub fn install_default_drivers() {
36 static ONCE: Once = Once::new();
37
38 ONCE.call_once(|| {
39 install_drivers(&[
40 #[cfg(feature = "mysql")]
41 sqlx_mysql::any::DRIVER,
42 #[cfg(feature = "postgres")]
43 sqlx_postgres::any::DRIVER,
44 #[cfg(feature = "_sqlite")]
45 sqlx_sqlite::any::DRIVER,
46 ])
47 .expect("non-default drivers already installed")
48 });
49}