Hasty Briefsbeta

双语

SQLx – The Rust SQL Toolkit

10 months ago
  • #Async
  • #SQL
  • #Rust
  • SQLx 是一个异步的、纯 Rust 实现的 SQL 工具包,支持编译时查询检查。
  • 支持 PostgreSQL、MySQL、MariaDB、SQLite(0.7 版本移除了对 MSSQL 的支持)。
  • 真正的异步实现,基于 async/await 实现最高并发性能。
  • 数据库无关且运行时无关(支持 async-std、tokio、actix)。
  • 纯 Rust 编写的 Postgres 和 MySQL/MariaDB 驱动,零 unsafe 代码。
  • 跨平台兼容,可在任何支持 Rust 的环境运行。
  • 内置 `sqlx::Pool` 连接池功能。
  • 支持行流式异步数据读取和解码。
  • 自动语句准备和缓存优化高阶查询。
  • 为 MySQL、MariaDB 和 PostgreSQL 提供 TLS 支持。
  • 通过 `LISTEN` 和 `NOTIFY` 实现 PostgreSQL 异步通知。
  • 支持带保存点的嵌套事务。
  • 任意数据库驱动实现运行时数据库切换。
  • 离线模式支持无数据库的编译时查询验证。
  • 提供连接池和查询执行的示例用法。
  • 同时支持预处理和非预处理查询。
  • 高阶查询接口:fetch、fetch_one、fetch_optional、fetch_all。
  • `query!` 和 `query_as!` 宏提供编译时 SQL 验证。
  • 采用 Apache 2.0 或 MIT 许可证授权。