当前位置:首页 >专题 >Go sqlc 类型安全 SQL 代码生成工程专题

Go sqlc 类型安全 SQL 代码生成工程专题
Go sqlc 类型安全 SQL 代

Go sqlc 类型安全 SQL 代码生成工程专题

从 SQL Schema 到可审查的 Go 数据访问层
sqlc 把 SQL Schema 与查询编译成可审查、类型安全的 Go 数据访问代码,适合希望保留 SQL 控制力、又减少手写样板的后端团队。本专题以 sqlc 1.31.1 官方文档和发布资料为入口,串联 PostgreSQL、MySQL、SQLite、pgx、迁移校验、批量查询与生成失败排查,形成从建模到 CI 回归的实战路线。

站内 SQL 生成与 Go 数据访问实践

从 sqlc 排错、pgx 驱动到查询设计,按工程风险逐步落地

Golang 无法生成 sqlc
文章

Golang 无法生成 sqlc

排查 Golang 项目中 sqlc 无法生成代码的常见原因。
postgresql 时间间隔不会被 sqlc.yaml 配置覆盖
文章

postgresql 时间间隔不会被 sqlc.yaml 配置覆盖

处理 PostgreSQL interval 类型与 sqlc.yaml 类型映射的配置边界。
使用 pgx 迁移 goose 的指南
文章

使用 pgx 迁移 goose 的指南

围绕 pgx 与 goose 的组合完成数据库访问和迁移衔接。
使用结构体进行批量 SQL 查询
文章

使用结构体进行批量 SQL 查询

用结构体组织批量 SQL 查询与结果处理。
使用 Jack/PGX 更新复合类型的 PSQL 行
文章

使用 Jack/PGX 更新复合类型的 PSQL 行

使用 pgx 处理 PostgreSQL 复合类型和行更新。
在 Go 中编写文本 SQL 查询的正确方法
文章

在 Go 中编写文本 SQL 查询的正确方法

讨论 Go 中组织文本 SQL 查询的实践方法。
Golang开发建议:如何编写高效的数据库访问和事务处理代码
文章

Golang开发建议:如何编写高效的数据库访问和事务处理代码

总结 Go 数据库访问、事务处理和性能方面的工程建议。
对 MySQL 数据库进行动态 SQL 查询
文章

对 MySQL 数据库进行动态 SQL 查询

介绍 MySQL 动态 SQL 查询的实现和注意事项。

Go sqlc 常见问题

回答从工具选择到生产维护的长尾问题

sqlc 和 ORM 应该怎么选?

如果团队希望保留 SQL 控制力、让查询在编译期暴露类型错误,并接受生成代码流程,sqlc 很合适;需要大量运行时动态建模时再评估 ORM 或查询构造器。

sqlc 生成的代码要不要提交到 Git?

通常应提交生成结果或在 CI 强制生成并校验差异,关键是团队要有唯一且可复现的 sqlc 版本、配置和生成命令。

sqlc 能处理动态 SQL 吗?

可以通过参数化查询、可选条件设计或保留少量手写查询处理;完全动态的表名、列名和条件组合需要额外的查询构造层,并接受类型安全边界变窄。

sqlc 项目上线前至少要验收什么?

至少校验 schema 与迁移一致、生成命令可重复、查询单测覆盖关键参数、事务和错误路径,并在 CI 中固定版本、检查生成差异和运行真实数据库集成测试。

微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议 和 隐私政策
返回登录
  • 重置密码