Golang Database

Go database/sql-, sqlx-, pgx-Best-Practices — Parametrisierung, Transaktionen, Pooling, NULLs.

von samber · samber/cc-skills-golang

Getestet · Funktioniert ★ 8.8/10

Golang Database — Go database/sql-, sqlx-, pgx-Best-Practices — Parametrisierung, Transaktionen, Pooling, NULLs.

Was es kann

Eine Best-Practices-Checkliste und Persona zum Schreiben oder Review von Go-Code, der mit Postgres, MySQL, MariaDB oder SQLite spricht. Reagiert, wenn der User database/sql-, sqlx- oder pgx-Code schreibt, reviewt oder debuggt, und verweigert ausdrücklich das Generieren von Schemas oder Migrations-SQL, das er menschlichem Review überlässt. Liefert vier ausführliche Referenzdokumente (Transaktionen, Performance, Testing, Scanning), alle im Repo vorhanden.

Testbericht

Bekam einen Go-Handler mit string-formatiertem SQL und ohne rows.Close(); nannte die exakt verletzte Regel (#5 'rows MUST be closed') und schrieb die Funktion mit sqlx.GetContext und explizitem sql.ErrNoRows-Handling um, statt nur 'sieht unsicher aus' zu markieren.

Getestet am: 2026-07-13 · Claude Code 2.x (agent harness)

Installation

git clone https://github.com/samber/cc-skills-golang
cd cc-skills-golang
mkdir -p ~/.claude/skills
cp -r skills/golang-database ~/.claude/skills/golang-database

Befehle & Beispiel-Prompts

  • /golang-databaseGo database/sql-, sqlx-, pgx-Best-Practices — Parametrisierung, Transaktionen, Pooling, NULLs.

Skills reagieren auf normale Anfragen — keine Slash-Befehle nötig. Nach der Installation aktivieren Prompts wie diese den Skill (auf Englisch):

  • Review this Go function that queries Postgres for SQL injection risks
  • How should I handle sql.ErrNoRows in Go when using sqlx
  • Debug this pgx connection pool exhaustion issue in my Go service