Dato vs Informazione
Due concetti spesso confusi, con una differenza fondamentale
Nel mondo aziendale, e in particolare negli indirizzi AFM e RIM, si sente spesso parlare di dati e informazioni come se fossero la stessa cosa. Non lo sono — e capire la differenza è il punto di partenza di qualunque ragionamento sui database.
| Concetto | Definizione | Esempio |
|---|---|---|
| Dato | Una descrizione elementare, un valore grezzo privo di contesto. | Rossi · 01/01/2025 · 120.50 |
| Informazione | L'incremento di conoscenza che si ottiene interpretando e contestualizzando i dati. | "Il cliente Rossi ha effettuato un ordine di 120,50 € il 01/01/2025" |
L'insieme di valori {Rossi, 01/01/2025, 120.50} è una raccolta di dati grezzi: di per sé non ci dice nulla. Diventa informazione significativa solo quando gli associamo uno schema che ne definisce il significato, ad esempio {Cognome Cliente, Data Ordine, Importo Fattura}.
Perché questa distinzione conta nel lavoro
In un'azienda AFM o RIM, chi gestisce dati senza capirne il significato commette errori costosi. Un file Excel con 10.000 righe di numeri senza intestazioni è dati. Lo stesso file con intestazioni chiare, formule corrette e filtri appropriati diventa informazione su cui si prendono decisioni.
ART-042, 15, 2025-03-10. Sono dati. Quando il gestionale li interpreta come "Articolo ART-042: 15 unità vendute il 10 marzo 2025", diventano informazione utile al riordino.
Schema e Istanza
Un database è definito da due livelli distinti: la sua struttura (schema) e i suoi contenuti (istanza). Confonderli è uno degli errori più comuni tra chi si avvicina ai database per la prima volta.
| Concetto | Cos'è | Cambia nel tempo? | Esempio |
|---|---|---|---|
| Schema | La definizione della struttura: nomi delle tabelle, colonne, tipi di dato, vincoli. | Raramente (solo con modifiche strutturali) | Tabella CLIENTI con colonne: ID, Cognome, Nome, Email |
| Istanza | I dati effettivamente contenuti nel database in un dato momento. | Continuamente (ad ogni INSERT, UPDATE, DELETE) | La riga: 1, Rossi, Marco, marco@email.it |
Perché la distinzione è importante
Quando si progetta un database, si lavora prima sullo schema — si decide quali tabelle creare e come collegarle. Solo dopo si inseriscono i dati (istanza). Modificare lo schema di un database già popolato è costoso e rischioso: richiede migrazioni, controlli di integrità, aggiornamenti ai programmi che usano il database.
Limiti dei file
Prima dei database, le aziende conservavano i dati in file separati: un file per le fatture, uno per i clienti, uno per il magazzino. Questo approccio, ancora diffuso con Excel, presenta problemi strutturali gravi.
Cos'è un Database
Un database (base di dati) è una raccolta organizzata di dati correlati, strutturata in modo da consentire l'accesso, la gestione e l'aggiornamento efficiente delle informazioni.
Caratteristiche fondamentali
Il DBMS
Il DBMS (Database Management System, Sistema di Gestione di Basi di Dati) è il software che si interpone tra gli utenti/applicazioni e il database fisico. Non si "apre un database" direttamente — si usa sempre un DBMS come intermediario.
| DBMS | Tipo | Uso tipico |
|---|---|---|
| MySQL / MariaDB | Relazionale, open source | Applicazioni web, siti WordPress |
| PostgreSQL | Relazionale avanzato, open source | Applicazioni enterprise, dati geografici |
| SQLite | Relazionale, embedded | App mobile, file locali |
| Microsoft SQL Server | Relazionale, commerciale | Aziende Microsoft-stack |
| LibreOffice Base | DBMS desktop con HSQLDB | Uso didattico, piccoli archivi |
| MongoDB | NoSQL documentale | Dati non strutturati, JSON |
Funzioni principali del DBMS
- 1DDL — Data Definition Language: permette di creare, modificare ed eliminare la struttura del database (tabelle, vincoli, indici).
- 2DML — Data Manipulation Language: permette di inserire, aggiornare, eliminare e interrogare i dati (INSERT, UPDATE, DELETE, SELECT in SQL).
- 3Controllo accessi: gestisce utenti e permessi, garantendo che ogni soggetto possa fare solo ciò che gli è autorizzato.
- 4Gestione transazioni: raggruppa operazioni in unità atomiche (tutto o niente) per garantire la coerenza dei dati anche in caso di errori.
- 5Recovery: ripristina il database a uno stato coerente in caso di guasto hardware o software.
Le tre fasi di progettazione
Progettare un database non significa aprire subito un programma e creare tabelle. Si seguono tre fasi distinte, ognuna con strumenti e obiettivi propri.
-
1
Progettazione concettuale — Cosa dobbiamo rappresentare?
Si analizzano i requisiti del sistema e si produce un diagramma E-R (Entità-Relazione). Non si pensa ancora a come il database sarà implementato: si modella la realtà. Strumenti: diagrammi E-R, dizionario dei dati. -
2
Progettazione logica — Come organizziamo i dati?
Si traduce il diagramma E-R in un modello logico relazionale: tabelle, colonne, chiavi primarie e chiavi esterne. Si decide la struttura senza ancora preoccuparsi del DBMS specifico. -
3
Progettazione fisica — Come implementiamo nel DBMS scelto?
Si crea effettivamente il database nel DBMS scelto, ottimizzando per le sue caratteristiche specifiche: indici, tipi di dato nativi, partizioni, procedure.
Entità, Istanze, Attributi
Il diagramma Entità-Relazione (E-R) è il principale strumento della progettazione concettuale. Usa tre concetti fondamentali.
| Concetto | Definizione | Simbolo E-R | Esempio |
|---|---|---|---|
| Entità | Una "cosa" del mondo reale su cui vogliamo conservare informazioni. | Rettangolo | CLIENTE, PRODOTTO, ORDINE |
| Istanza | Un singolo elemento concreto di un'entità. | — | Il cliente Mario Rossi; il prodotto "Tastiera USB" |
| Attributo | Una proprietà che descrive un'entità. | Ovale / ellisse | Cognome, Nome, Email (attributi di CLIENTE) |
Tipi di attributo
Attributo chiave (identificatore)
Ogni entità deve avere almeno un attributo chiave (o identificatore): un attributo il cui valore identifica univocamente ogni istanza. Nel diagramma E-R è sottolineato. Nella tabella relazionale diventerà la chiave primaria (PK).
Simbologia E-R e Cardinalità
Oltre a entità e attributi, il diagramma E-R rappresenta le relazioni tra entità e la loro cardinalità — cioè quante istanze di un'entità possono essere associate a istanze dell'altra.
| Simbolo | Significato |
|---|---|
| Rettangolo | Entità |
| Rombo | Relazione tra entità |
| Ovale / Ellisse | Attributo |
| Ovale doppio | Attributo multivalore |
| Ovale tratteggiato | Attributo derivato (calcolabile da altri) |
| Linea con 1 | Partecipazione "uno" (al più una istanza) |
| Linea con N | Partecipazione "molti" (più istanze possibili) |
I tre tipi di cardinalità
-
1:1
Uno a Uno — Un'istanza di A è associata ad al più un'istanza di B e viceversa.
Esempio: PERSONA — PASSAPORTO (una persona ha al più un passaporto; un passaporto appartiene a una sola persona). -
1:N
Uno a Molti — Un'istanza di A è associata a più istanze di B; ogni istanza di B è associata a una sola istanza di A.
Esempio: CLIENTE — ORDINE (un cliente fa più ordini; ogni ordine appartiene a un solo cliente). -
N:M
Molti a Molti — Un'istanza di A è associata a più istanze di B e viceversa.
Esempio: STUDENTE — CORSO (uno studente segue più corsi; ogni corso ha più studenti iscritti).
Entità forti, deboli, ridondanze
Entità forte vs entità debole
Nel diagramma E-R, l'entità debole è rappresentata con un rettangolo doppio e la relazione con l'entità forte con un rombo doppio.
Ridondanze
Una ridondanza nel diagramma E-R è un'informazione che può essere derivata da altre informazioni già presenti nel modello. Va identificata ed eliminata (o giustificata) durante la progettazione.
Dal concettuale al logico
La progettazione logica traduce il diagramma E-R in un insieme di tabelle relazionali. Si seguono regole precise per ogni tipo di entità e relazione.
Regole di traduzione
-
1
Ogni entità diventa una tabella. Gli attributi dell'entità diventano le colonne. L'attributo chiave diventa la chiave primaria (PK).
-
2
Relazione 1:N → chiave esterna. La chiave primaria del lato "1" va inserita come colonna aggiuntiva (chiave esterna, FK) nella tabella del lato "N".
-
3
Relazione N:M → tabella associativa. Si crea una nuova tabella con le chiavi primarie di entrambe le entità. Queste due FK formano insieme la chiave primaria composta della tabella associativa.
-
4
Relazione 1:1 → fusione o FK. Si può unire le due entità in una sola tabella, oppure inserire la FK in una delle due (preferibilmente in quella con partecipazione obbligatoria).
-
5
Attributi multivalore → tabella separata. Un attributo multivalore (es. Telefono) diventa una tabella separata con FK verso l'entità originale.
-
6
Entità debole → FK obbligatoria. La tabella dell'entità debole include la PK dell'entità forte come FK (e spesso come parte della PK composta).
Esempio completo — Da E-R a tabelle relazionali
Partiamo da un semplice E-R: STUDENTE frequenta CORSO (relazione N:M).
tabella
associativa