Inhaltsverzeichnis
SQL Algoritmi Kontrolna Lista
Verzija: 2.1
Opseg: Stored Procedures, Views, migracije i logika upita preko MS SQL / MySQL / SQLite.
MORA
- [ ] Parametrizacija: nema string konkatenacije za SQL naredbe; striktno tipiziranje
- [ ] Pretpostavke sheme su dokumentirane (Collation, Case Sensitivity, Null Semantics)
- [ ] Transakcije su eksplicitne kada je potrebno; Isolation Level je obrazložen
- [ ] Idempotentnost: migracije i setup skripte mogu sigurno pokrenuti (ili jasno navesti neindempotentnost)
- [ ] Konkurentnost: ponašanje zaključavanja je razmotreno (Deadlocks, Long Locks, Escalation)
- [ ] Strategija indeksa je validirana; promjene imaju obrazloženje i bilješke o utjecaju
- [ ] Query Plans su pregledani za kritične putanje (MS SQL: Actual Plan; MySQL: EXPLAIN; SQLite: Query Plan)
- [ ] Paginacija koristi deterministički redoslijed (nema „OFFSET bez ORDER BY“)
- [ ] Date/Time semantika je eksplicitna (UTC vs Local; konverzije vremenske zone)
- [ ] Obrada grešaka mapira DB greške u sigurne aplikacijske greške (nema curenja sheme)
TREBALO BI
- [ ] Izbjegavati RBAR/Cursore gdje su dostupna set-based rješenja (osim ako obrazloženo)
- [ ] Koristiti ograničene skupove rezultata; izbjegavati „SELECT *“ u javnim sučeljima
- [ ] Pružiti test datasetove i regresijske upite za edge cases
POŽELJNO
- [ ] Dokumentirati engine-specifične razlike (npr. LIMIT/OFFSET, RETURNING podrška, JSON funkcije)
- [ ] Pružiti performanse baseline za tablice velikog volumena
Verzija: 2.1 (Split)
Autor: Wolfgang van der Stille
Natrag na Stack Kontrolne Liste | Kontrolne Liste za Pregled
Zuletzt geändert: 29.01.2026. u 20:58