Inhaltsverzeichnis
SQL Algorithms Checklist
Version: 2.1
Scope: Stored Procedures, Views, Migrations und Query Logic über MS SQL / MySQL / SQLite.
MUST
- [ ] Parameterization: keine String-Konkatenation für SQL Commands; strict Typing
- [ ] Schema Assumptions sind dokumentiert (Collation, Case Sensitivity, Null Semantics)
- [ ] Transactions sind explizit wenn benötigt; Isolation Level ist begründet
- [ ] Idempotence: Migrations und Setup Scripts können safe laufen (oder non-idempotence klar angeben)
- [ ] Concurrency: Locking Behavior ist berücksichtigt (Deadlocks, Long Locks, Escalation)
- [ ] Index Strategy ist validiert; Änderungen haben Rationale und Impact Notes
- [ ] Query Plans sind für kritische Paths reviewed (MS SQL: Actual Plan; MySQL: EXPLAIN; SQLite: Query Plan)
- [ ] Pagination verwendet deterministic Ordering (kein „OFFSET ohne ORDER BY“)
- [ ] Date/Time Semantics sind explizit (UTC vs Local; Time Zone Conversions)
- [ ] Error Handling mappt DB Errors zu safe Application Errors (kein Schema Leakage)
SHOULD
- [ ] RBAR/Cursors vermeiden wo set-based Solutions verfügbar sind (außer begründet)
- [ ] Bounded Result Sets verwenden; „SELECT *“ in public Interfaces vermeiden
- [ ] Test Datasets und Regression Queries für Edge Cases bereitstellen
NICE
- [ ] Engine-spezifische Differences dokumentieren (z.B. LIMIT/OFFSET, RETURNING Support, JSON Functions)
- [ ] Performance Baselines für High-Volume Tables bereitstellen
Version: 2.1 (Split)
Autor: Wolfgang van der Stille
Zurück zu Stack Checklists | Review Checklists
Zuletzt geändert: den 29.01.2026 um 15:13