14 điểm bởi xguru 2025-08-04 | Chưa có bình luận nào. | Chia sẻ qua WhatsApp
  • Crate SQL thuần Rust hoạt động theo kiểu bất đồng bộ (async), cho phép xác thực truy vấn SQL tại thời điểm biên dịch mà không cần DSL bằng macro Rust
    • Không phải ORM! : Tối ưu cho các dự án muốn dùng trực tiếp SQL mà không cần ORM
  • Hỗ trợ các cơ sở dữ liệu như PostgreSQL, MySQL, MariaDB, SQLite
    • Có thể dễ dàng kiểm tra tại thời điểm biên dịch bằng cách chỉ định DATABASE_URL trong tệp .env
  • Triển khai Pure Rust (driver MySQL/MariaDB được viết 100% bằng Rust, SQLite tích hợp thư viện C), được thiết kế an toàn không dùng mã unsafe, nên có độ tin cậy cao
  • Tương thích với các runtime bất đồng bộ Rust phổ biến như Tokio, async-std, actix cùng nhiều backend TLS khác nhau, và có thể sử dụng độc lập với nền tảng
  • Giấy phép kép MIT/Apache 2.0, cho phép ứng dụng rộng rãi trong các dự án mã nguồn mở và thương mại

Tính năng chính

  • Connection pooling với sqlx::Pool
  • Streaming Row bất đồng bộ dữ liệu từ cơ sở dữ liệu
  • Tự động chuẩn bị và lưu đệm truy vấn theo từng connection
  • Có thể dễ dàng chạy cả truy vấn không chuẩn bị sẵn (không phải Prepared), kết quả vẫn được trả về dưới cùng kiểu Row
  • Hỗ trợ kết nối mã hóa TLS trên các DB được hỗ trợ (MySQL, MariaDB, PostgreSQL)
  • Hỗ trợ thông báo PostgreSQL bất đồng bộ: LISTENNOTIFY
  • Hỗ trợ giao dịch lồng nhau với savepoint (Savepoint)
  • Hỗ trợ AnyPool, cho phép thay thế driver DB một cách linh hoạt tại runtime

Chưa có bình luận nào.

Chưa có bình luận nào.