pub async fn create_connection(
dsn: &str,
) -> Result<Box<dyn Connection>, DbError>Expand description
统一连接便利函数:按 DSN scheme 自动识别后端并创建连接
这是 sz-orm-sqlx 对外提供的统一入口,下游项目(如 sz-rust)只需调用此函数, 无需为每种数据库编写独立的连接逻辑。Oracle/MSSQL 支持通过 feature gate 启用。
§支持的 DSN scheme
mysql:///mariadb://→ MySQLpostgres:///postgresql://→ PostgreSQLsqlite:///sqlite:→ SQLiteoracle://→ Oracle(需启用oraclefeature)mssql:///sqlserver://→ MSSQL(需启用mssqlfeature)
§错误
- DSN scheme 不识别 →
DbError::ConnectionRefused - Oracle/MSSQL 后端未启用对应 feature →
DbError::ConnectionRefused含提示 - 连接失败 →
DbError::ConnectionError
§示例
use sz_orm_core::Connection;
let mut conn = sz_orm_sqlx::create_connection("sqlite::memory:").await?;
conn.execute("CREATE TABLE t (id INTEGER PRIMARY KEY)").await?;