Corso di basi di dati A.A. 2020/2021
Prof: Tiziana Catarci, Francesco Leotta
Il modello relazionale
Il modello relazionale si basa sul concetto matematico di relazione. Le relazioni provengono dalla teoria degli insiemi e hanno una rappresentazione per mezzo di tabelle. Il modello è basato su valori: i riferimenti fra dati in strutture (relazioni) diverse sono rappresentati per mezzo dei valori stessi.
Definizione di prodotto cartesiano
Presi tutti i domini D1, D2, ..., Dn (n insiemi - detti domini della relazione - anche non distinti), il prodotto cartesiano D1xD2xD3...xDn è l'insieme di tutte le n-uple (o tuple) ordinate e distinte (d1, d2,..., dn) tali che d1 ∈ D1, d2 ∈ D2,..., dn ∈ Dn.
Una relazione matematica di D1, D2,..., Dn è un sottoinsieme del prodotto cartesiano D1xD2xD3...xDn, quindi anche una tabella relazionale è un sottoinsieme del prodotto cartesiano. Il costrutto di base per la descrizione dei dati è la relazione, ovvero una tabella.
Il grado della relazione è il numero dei domini
La cardinalità della relazione è il numero di tuple
Una relazione può anche essere vista come un insieme non ordinato di tuple, mentre la struttura della tupla è ordinata.
Tabelle
Una relazione è vista come una tabella: a ciascun dominio è associato un nome (attributo) che descrive il ruolo del dominio (gli attributi sono usati come intestazione delle colonne il cui ordinamento è irrilevante), le righe della tabella rappresentano specifici record (o tuple) diversi tra loro.
Proprietà di una tabella che rappresenta una relazione
- I valori di ciascuna colonna sono fra loro omogenei (appartengono allo stesso dominio)
- Le righe sono diverse fra loro (almeno un attributo delle tuple è diverso)
- Le intestazioni delle colonne (attributi) sono diverse tra loro
Inoltre, in una tabella che rappresenta una relazione:
- L'ordinamento tra le righe è irrilevante
- L'ordinamento tra le colonne è irrilevante
Relazione
I riferimenti fra dati in relazioni diverse sono rappresentati per mezzo di valori dei domini che compaiono nelle tuple. (Es: I domini degli attributi sono String per Casa e Fuori, e Integer per Reticasa e Retifuori)
Sia X l'insieme degli attributi di una relazione R. Se t è una tupla di R, cioè una tupla su X, e A ∈ X, allora t[A] (oppure t.A) indica il valore che t ha in corrispondenza dell'attributo A.
- Se t è la prima tupla della tabella, allora t[Fuori] = Lazio
- t[Fuori, Retifuori] indica una tupla sui due attributi Fuori e Retifuori
- Riferendoci alla prima tupla t della tabella si ha
-
Basi di dati - il modello relazionale
-
Basi di dati - il modello relazionale
-
Gestione dati e archivi - il modello relazionale
-
Basi di dati - modello logico e modello relazionale