Cos'è il modello relazionale?
Il modello relazionale (RM) rappresenta il database come una raccolta di relazioni. Una relazione non è altro che una tabella di valori. Ogni riga della tabella rappresenta una raccolta di valori di dati correlati. Queste righe nella tabella indicano un'entità o una relazione del mondo reale.
Il nome della tabella e i nomi delle colonne sono utili per interpretare il significato dei valori in ogni riga. I dati sono rappresentati come un insieme di relazioni. Nel modello relazionale, i dati vengono archiviati come tabelle. Tuttavia, l'archiviazione fisica dei dati è indipendente dal modo in cui i dati sono organizzati logicamente.
Alcuni popolari sistemi di gestione di database relazionali sono:
- DB2 e Informix Dynamic Server - IBM
- Oracle e RDB - Oracle
- SQL Server e Access - Microsoft
In questo tutorial imparerai
- Concetti del modello relazionale
- Vincoli di integrità relazionale
- Operazioni nel modello relazionale
- Best practice per la creazione di un modello relazionale
- Vantaggi dell'utilizzo del modello relazionale
- Svantaggi dell'utilizzo del modello relazionale
Concetti del modello relazionale
- Attributo: ogni colonna in una tabella. Gli attributi sono le proprietà che definiscono una relazione. ad esempio, Student_Rollno, NAME, ecc.
- Tabelle : nel modello relazionale, le relazioni vengono salvate nel formato tabella. Viene memorizzato insieme alle sue entità. Una tabella ha due righe e colonne di proprietà. Le righe rappresentano i record e le colonne rappresentano gli attributi.
- Tupla : non è altro che una singola riga di una tabella, che contiene un singolo record.
- Schema di relazione: uno schema di relazione rappresenta il nome della relazione con i suoi attributi.
- Grado: il numero totale di attributi che nella relazione è chiamato il grado della relazione.
- Cardinalità: numero totale di righe presenti nella tabella.
- Colonna: la colonna rappresenta l'insieme di valori per un attributo specifico.
- Istanza di relazione: l'istanza di relazione è un insieme finito di tuple nel sistema RDBMS. Le istanze di relazione non hanno mai tuple duplicate.
- Chiave di relazione : ogni riga ha uno, due o più attributi, denominati chiave di relazione.
- Dominio degli attributi : ogni attributo ha un valore e un ambito predefiniti noti come dominio degli attributi
Vincoli di integrità relazionale
I vincoli di integrità relazionale nel DBMS sono riferiti a condizioni che devono essere presenti per una relazione valida. Questi vincoli relazionali nel DBMS derivano dalle regole del mini-mondo rappresentato dal database.
Esistono molti tipi di vincoli di integrità in DBMS. I vincoli sul sistema di gestione dei database relazionali sono principalmente suddivisi in tre categorie principali:
- Vincoli di dominio
- Vincoli chiave
- Vincoli di integrità referenziale
Vincoli di dominio
I vincoli di dominio possono essere violati se un valore di attributo non viene visualizzato nel dominio corrispondente o se non è del tipo di dati appropriato.
I vincoli di dominio specificano che all'interno di ogni tupla e il valore di ogni attributo deve essere univoco. Questo è specificato come tipi di dati che includono tipi di dati standard interi, numeri reali, caratteri, booleani, stringhe di lunghezza variabile, ecc.
Esempio:
Create DOMAIN CustomerNameCHECK (value not NULL)
L'esempio mostrato dimostra la creazione di un vincolo di dominio tale che CustomerName non sia NULL
Vincoli chiave
Un attributo che può identificare in modo univoco una tupla in una relazione è chiamato chiave della tabella. Il valore dell'attributo per diverse tuple nella relazione deve essere univoco.
Esempio:
Nella tabella data, CustomerID è un attributo chiave della tabella clienti. È molto probabile che abbia un'unica chiave per un cliente, CustomerID = 1 è solo per CustomerName = "Google".
Identificativo del cliente | Nome del cliente | Stato |
1 | Attivo | |
2 | Amazon | Attivo |
3 | Mela | Non attivo |
Vincoli di integrità referenziale
I vincoli di integrità referenziale nel DBMS si basano sul concetto di chiavi esterne. Una chiave esterna è un attributo importante di una relazione a cui fare riferimento in altre relazioni. Lo stato del vincolo di integrità referenziale si verifica quando la relazione si riferisce a un attributo chiave di una relazione diversa o uguale. Tuttavia, quell'elemento chiave deve esistere nella tabella.
Esempio:
Nell'esempio sopra, abbiamo 2 relazioni, Cliente e Fatturazione.
La tupla per CustomerID = 1 è referenziata due volte nella relazione Billing. Quindi sappiamo CustomerName = Google ha un importo di fatturazione di $ 300
Operazioni nel modello relazionale
Sono quattro le operazioni di aggiornamento di base eseguite sul modello di database relazionale
Inserisci, aggiorna, elimina e seleziona.
- Inserisci viene utilizzato per inserire dati nella relazione
- Elimina viene utilizzato per eliminare le tuple dalla tabella.
- Modifica consente di modificare i valori di alcuni attributi nelle tuple esistenti.
- Seleziona consente di scegliere un intervallo specifico di dati.
Ogni volta che viene applicata una di queste operazioni, i vincoli di integrità specificati nello schema del database relazionale non devono mai essere violati.
Inserisci operazione
L'operazione di inserimento fornisce i valori dell'attributo per una nuova tupla che dovrebbe essere inserita in una relazione.
Operazione di aggiornamento
Puoi vedere che nella tabella delle relazioni riportata di seguito CustomerName = 'Apple' viene aggiornato da Inattivo ad Attivo.
Elimina operazione
Per specificare l'eliminazione, una condizione sugli attributi della relazione seleziona la tupla da eliminare.
Nell'esempio sopra riportato, CustomerName = "Apple" viene eliminato dalla tabella.
L'operazione di eliminazione potrebbe violare l'integrità referenziale se la tupla eliminata è referenziata da chiavi esterne di altre tuple nello stesso database.
Seleziona Operazione
Nell'esempio sopra riportato, CustomerName = "Amazon" è selezionato
Best practice per la creazione di un modello relazionale
- I dati devono essere rappresentati come una raccolta di relazioni
- Ogni relazione dovrebbe essere rappresentata chiaramente nella tabella
- Le righe dovrebbero contenere dati sulle istanze di un'entità
- Le colonne devono contenere dati sugli attributi dell'entità
- Le celle della tabella dovrebbero contenere un singolo valore
- A ciascuna colonna dovrebbe essere assegnato un nome univoco
- Non possono essere identiche due righe
- I valori di un attributo dovrebbero provenire dallo stesso dominio
Vantaggi dell'utilizzo del modello relazionale
- Semplicità : un modello di dati relazionale in DBMS è più semplice del modello gerarchico e di rete.
- Indipendenza strutturale : il database relazionale riguarda solo i dati e non una struttura. Ciò può migliorare le prestazioni del modello.
- Facile da usare : il modello relazionale in DBMS è facile in quanto le tabelle costituite da righe e colonne sono abbastanza naturali e semplici da capire
- Capacità di query : consente a un linguaggio di query di alto livello come SQL di evitare una complessa navigazione nel database.
- Indipendenza dai dati : la struttura del database relazionale può essere modificata senza dover modificare alcuna applicazione.
- Scalabile : per quanto riguarda un numero di record o righe e il numero di campi, un database dovrebbe essere ingrandito per migliorarne l'usabilità.
Svantaggi dell'utilizzo del modello relazionale
- Pochi database relazionali hanno limiti sulle lunghezze dei campi che non possono essere superati.
- I database relazionali a volte possono diventare complessi man mano che la quantità di dati cresce e le relazioni tra i dati diventano più complicate.
- Sistemi di database relazionali complessi possono portare a database isolati in cui le informazioni non possono essere condivise da un sistema all'altro.
Sommario
- La modellazione del database relazionale rappresenta il database come una raccolta di relazioni (tabelle)
- Attributo, tabelle, tupla, schema di relazione, grado, cardinalità, colonna, istanza di relazione, sono alcuni componenti importanti del modello relazionale
- I vincoli di integrità relazionale sono riferiti a condizioni che devono essere presenti per un valido approccio di relazione in DBMS
- I vincoli di dominio possono essere violati se un valore di attributo non viene visualizzato nel dominio corrispondente o non è del tipo di dati appropriato
- Inserisci, Seleziona, Modifica ed Elimina sono le operazioni eseguite nei vincoli del modello relazionale
- Il database relazionale riguarda solo i dati e non una struttura che possa migliorare le prestazioni del modello
- I vantaggi del modello relazionale in DBMS sono semplicità, indipendenza strutturale, facilità d'uso, capacità di query, indipendenza dai dati, scalabilità, ecc.
- Pochi database relazionali hanno limiti sulle lunghezze dei campi che non possono essere superati.