launchbadge / sqlx

🧰 The Rust SQL Toolkit. An async, pure Rust SQL crate featuring compile-time checked queries without a DSL. Supports PostgreSQL, MySQL, and SQLite.
Apache License 2.0
12.81k stars 1.22k forks source link

Feature Request: Support DuckDB in SQLx #3186

Open DeflateAwning opened 4 months ago

DeflateAwning commented 4 months ago

Is your feature request related to a problem? Please describe. I wish I could use DuckDB in SQLx. SQLite is too slow for many of my applications, whereas DuckDB is exactly what I need.

Describe the solution you'd like I'd like DuckDB support which parallels SQLite.

Describe alternatives you've considered SQLite is an alternative. The official DuckDB bindings for Rust are totally good and usable, but being able to have compile-time SQL checks, and integration with the ORM layers on top of sqlx would be awesome!

Additional context DuckDB is an interesting database that is quite similar to SQLite. Their client crate offers an API very similar to that of rusqlite. As an OLAP database, it is very fast, and very good for data analytics, an area which Rust is making large strides in (esp. with the development of Polars).

abonander commented 4 months ago

See the following comment for our general disposition on adding drivers: https://github.com/launchbadge/sqlx/issues/3115#issuecomment-2002636940

See also #1999

DeflateAwning commented 4 months ago

1999 is closed, so I opened a new issue to track this active request. Hopefully more people will get in here to vote for this one, as I think it has huge potential!