技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
golang-database【数据与研究】Implement Go database access with context, pool tuning, transaction boundaries, and repository seams. Use when building repositories, tuning `sql.DB` or `pgx`, or reviewing DB transaction flow in Go.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
sql.DB or pgx, or reviewing DB transaction flow in Go.
metadata:
triggers:
files:
- 'internal/adapter/repository/**'
keywords:
- database
- sql
- postgres
- gorm
- sqlc
- pgxcontext.Context as the first argument to every query path.?, $1); never interpolate user strings into queries.strings.Repeat("?,", len(ids))) or sqlx.In and partition lists into chunks ≤ 1,000 items to avoid driver parameter limits.m.code AS code); drivers map by name and silently collide on joins.withTx(ctx, db, fn) with mandatory defer tx.Rollback(). Keep transactions short and focused on writes.rows.Next() directly into models to prevent unbounded memory allocation.database/sql, pgx, sqlx, sqlc, or ORM only if standardized.rows.Err().withTx helper with defer tx.Rollback().IN queries.context.Context.rows.Err()).IN (...) queries chunk parameters into batches of ≤ 1,000.SELECT *.defer tx.Rollback().QueryContext/ExecContext; bare queries ignore timeouts.fmt.Sprintf or +.defer rows.Close() and check rows.Err().