Il bisogno appare prima del linguaggio
Un negozio riceve ordini sul proprio sito, in negozio e per telefono. Il servizio clienti mantiene un file cliente, la contabilità tiene traccia dei pagamenti e le scorte hanno un proprio foglio. Ogni strumento soddisfa una ragionevole esigenza locale.
La difficoltà inizia quando gli stessi fatti esistono in più luoghi. Amel Ben Salah e A. Ben Salah sono la stessa persona? Il prodotto P-42 rimane 8 o 11 volte? Perché un pagamento non corrisponde a nessun ordine? Finché nessuna fonte controlla queste relazioni, due rapporti possono essere tecnicamente puliti e dire due verità diverse.
Quando una base diventa rilevante?
Un foglio di calcolo è eccellente per esplorare rapidamente un piccolo set di dati, stabilire una simulazione o preparare un'analisi una tantum. Un database diventa utile quando diversi processi leggono e modificano dati correlati, quando le regole devono essere identiche per tutti e quando la cronologia o i diritti di accesso contano.
La soglia non è un numero magico di linee. Diecimila linee stabili gestite da una sola persona possono restare semplici; cinquecento ordini modificati contemporaneamente da un sito, un negozio e un servizio clienti possono già richiedere una base.
- Dati condivisi da più attori
- Relazioni tra clienti, ordini, prodotti e pagamenti
- Regole da imporre nello stesso luogo
- Cambiamenti simultanei
- Risposte e storie ripetibili
Base, DBMS, server e SQL non sono la stessa cosa
Il database è l’insieme organizzato di fatti e regole. Lo DBMS è il software che li memorizza, li controlla ed esegue le operazioni. PostgreSQL, MySQL e SQL Server sono DBMS. Un server è l'ambiente che spesso rende questo servizio accessibile alle applicazioni e agli utenti.
SQL è il linguaggio con cui descriviamo una struttura, leggiamo dati, li modifichiamo, impostiamo vincoli o gestiamo determinati accessi. Gli DBMS condividono una base SQL, quindi ne aggiungono tipologie, funzioni e strumenti: parliamo di dialetti.
La relazione e la regola creano fiducia
Una tabella clienti identifica ogni persona tramite id_client. Un comando salva questo identificatore invece di copiare il nome. Una chiave esterna può quindi rifiutare un ordine legato ad un cliente inesistente.
La base può anche addebitare un prezzo, impedire la duplicazione di un'e-mail o limitare uno stato. Queste regole non rendono automaticamente accurati tutti i dati: principalmente impediscono stati noti come impossibili e rendono visibili le eccezioni.
CREATE TABLE clients (
id_client INTEGER PRIMARY KEY,
email TEXT UNIQUE NOT NULL
);
CREATE TABLE commandes (
id_commande INTEGER PRIMARY KEY,
id_client INTEGER NOT NULL REFERENCES clients(id_client),
montant NUMERIC CHECK (montant >= 0)
);SQL trasforma una domanda in un risultato riproducibile
Una volta strutturati gli ordini, la domanda “in quale città realizziamo più fatturato?” » ha una fonte, un calcolo e un ordine espliciti. Un'altra persona può rileggere la query, eseguirla nello stesso ambito e verificare il risultato.
La query raggruppa gli ordini per città, ne somma l'importo, quindi ordina i totali dal più grande al più piccolo. Non è solo un calcolo: documenta il metodo utilizzato.
SELECT ville, SUM(montant) AS chiffre_affaires
FROM commandes
GROUP BY ville
ORDER BY chiffre_affaires DESC;Tre idee fuorvianti da evitare
Comprendere i confini dello strumento evita di sostituire una promessa ingenua con un’altra.
- “Una base elimina tutti gli errori”: impone le regole che la squadra ha definito e correttamente modellato.
- “SQL è solo per analisti”: lo utilizzano anche applicazioni, API, sistemi aziendali e team amministrativi.
- “Dobbiamo abbandonare Excel”: fogli di calcolo e database spesso si completano a vicenda; l'importante è sapere dove si trova la fonte controllata.
Domanda da porsi prima di scegliere uno strumento
Prendi un set di dati dal tuo lavoro o dai tuoi studi. Chi lo modifica? Quali informazioni vengono ripetute? Quali relazioni devono sempre esistere? Quale errore costerebbe caro? La risposta indica meglio la necessità di un database rispetto al solo numero di record restituiti.
La microformazione gratuita ora ti consente di individuare queste incoerenze, costruire relazioni ed eseguire la query sulle entrate senza chiedere un account prima del successo.
Comprendi il problema prima del codice.
Completa la scoperta gratuita ed esegui la prima query su un caso aziendale.
