Show HN: sqlc-gen-sqlx, a sqlc plugin for generating sqlx Rust code (github.com)

1 points by jrandolf ↗ HN
`sqlc-gen-sqlx` is a `sqlc` (https://sqlc.dev) plugin that generates `sqlx`-oriented Rust code from annotated SQL queries.

The generated API is intentionally small:

- a `const SQL`

- row structs for `:one` and `:many`

- params structs when a query has multiple parameters

- methods on `Queries<E>` that work with `&PgPool`, `&mut PgConnection`, or `&mut Transaction`

Current scope is PostgreSQL. It supports the usual `sqlc` query annotations, plus enums, composite types, batch queries, `COPY FROM`, `sqlc.slice()`, `sqlc.embed()`, and type overrides.

1 comment

[ 4.4 ms ] story [ 15.5 ms ] thread
How does this handle prepared statement caching compared to writing sqlx queries directly? Been burned before by N+1 prepared statement creation in high-throughput services. Also curious if there's a migration story since sqlc plugins are relatively new, did you hit any gotchas moving existing sqlx codebases over?