Transazioni Database: ACID e Livelli di Isolamento Spiegati

Perché un bonifico bancario richiede più di due UPDATE Sposta 50€ da un conto a un altro. Nella versione naive bastano due istruzioni: sottrai dal conto A, aggiungi al conto B. Eseguile separatamente e, se il processo va in crash o la connessione cade tra le due, il denaro è sparito da A e non arriva mai su B. Il database ha fatto esattamente quello che gli è stato chiesto, due volte. Il business ha perso 50€ comunque. ...

31 ottobre 2026 · 10 minuti · 1941 parole · SpaghettiCoder

Tipi di JOIN in SQL Spiegati con Esempi

Una JOIN scritta male non genera un errore. Viene eseguita, restituisce un risultato, e le righe sono sbagliate: clienti che mancano, totali gonfiati, record orfani invisibili. Nella maggior parte dei casi la query ha chiesto esattamente quello che ha ottenuto, e chi l’ha scritta ha scelto il tipo di join sbagliato, oppure ha filtrato nel punto sbagliato. Una join combina le righe di due tabelle in base a una condizione che scrivi tu. Quali righe sopravvivono dipende dal tipo di join, e i sei tipi descritti sotto danno sei risposte diverse partendo dalle stesse due tabelle. ...

2 ottobre 2026 · 10 minuti · 1933 parole · SpaghettiCoder

Come Funzionano gli Indici Database e Quando Usarli

Su una tabella da un milione di righe, la stessa SELECT può richiedere cinquanta millisecondi oppure molto meno di uno. L’unica differenza è se il database legge riga per riga per trovare quelle che hai chiesto, oppure salta dritto a quelle giuste. Un indice è ciò che gli permette di saltare, e lo paghi a ogni scrittura. Concretamente, un indice è una seconda copia ordinata di una o più colonne, salvata accanto alla tabella e aggiornata automaticamente ogni volta che la tabella cambia. Il database la usa per raggiungere le righe corrispondenti senza toccare il resto. ...

27 settembre 2026 · 9 minuti · 1764 parole · SpaghettiCoder