|0.2.0-alpha.13||Jun 16, 2020|
|0.2.0-alpha.12||May 20, 2020|
|0.2.0-alpha.11||Mar 26, 2020|
|0.2.0-alpha.9||Feb 28, 2020|
|0.1.4||Dec 30, 2019|
#55 in Database interfaces
339 downloads per month
Quaint is an abstraction over certain SQL databases. It provides:
- An AST for building dynamic SQL queries.
- Visitors for different databases to generate SQL strings.
- Connectors to abstract over results and querying.
- Pooling with mobc
- Async/await and Futures 0.3
full: All connectors and a pooled
full-postgresql: Pooled support for PostgreSQL
full-mysql: Pooled support for MySQL
full-sqlite: Pooled support for SQLite
full-mssql: Pooled support for Microsoft SQL Server
single: All connectors, but no pooling
single-postgresql: Single connection support for PostgreSQL
single-mysql: Single connection support for MySQL
single-sqlite: Single connection support for SQLite
single-mssql: Single connection support for Microsoft SQL Server
- Query generation when the database and conditions are not known beforehand.
- Parameterized queries and SQL injection protection.
- A modular design, a separate AST and separate visitors and connectors.
- Database-level type-safety in query building or being an ORM.
For type-safe database abstraction, Diesel is an excellent choice.
.envrcfor connection params. Override variables if different. MySQL, PostgreSQL and SQL Server needs to be running for tests to succeed.
> cargo test
The queries can be logged by setting the
LOG_QUERIES environment variable to any
value. They'll be logged at the
INFO level and are visible when having a
logger in scope. If using Tracing,
compiling Quaint with the
tracing-log feature flag will parameterize the
logged queries into a more suitable format for Tracing.