Relazioni e attributi
Introduzione
modificaTre accezioni di relazione:
- Relazione matematica: definizione dalla teoria degli insiemi.
- Relazione: secondo il modello relazionale.
- Relazione (relationship): nel modello E-R rappresenta un legame (associazione, correlazione) tra entità.
Una relazione matematica sui domini è un sottoinsieme del prodotto cartesiano .
[definizione prodotto cartesiano]
Una relazione può essere rappresentata attraverso una tabella.
Proprietà relazione matematica:
- è un insieme di n-uple ordinate con .
- non è definito alcun ordinamento tra le n-uple. (due tabelle con le stesse righe, ma in ordine diverso, rappresentano la stessa relazione)
- le n-uple sono distinte l'una dall'altra, in quanto, tra gli elementi di un insieme non possono essere presenti due elementi uguali. Una tabella rappresenta una relazione solo se le sue righe sono l'una diversa dall'altra.
Esempio di una relazione matematica:
Realizzazione della relazione (tabella):
Juventus | Lazio | 3 | 1 |
Milan | Roma | 0 | 0 |
Sassuolo | Verona | 3 | 3 |
In questa realizzazione ciascuno dei domini ha un ruolo diverso, distinguibile attraverso la posizione. Per questo si parla di struttura posizionale.
Per migliorare questa struttura si associa ad ogni dominio un nome(attributo), che ne descrive il "ruolo".
Casa | Fuori | Reti Casa | Reti Fuori |
---|---|---|---|
Juventus | Lazio | 3 | 1 |
Milan | Roma | 0 | 0 |
Sassuolo | Verona | 3 | 3 |
Dopo questa introduzione si parla di struttura non posizionale. Ogni istanza della relazione è un insieme di coppie dove è il nome dell'attributo e è il valore nel dominio dell'attributo.
Valori nulli
modificaPer rappresentare in modo semplice, ma al tempo stesso comodo, la non disponibilità di valori, il concetto di relazione viene di solito esteso prevedendo che una tupla possa assumere, su ciascun attributo, o un valore del dominio, oppure un valore speciale detto valore nullo che denota l'assenza dell'informazione.
Non viene fatta distinzione tra valore inesistente o sconosciuto. Sappiamo solo che non c'è l'informazione.
Quando si definisce una relazione è possibile specificare che i valori nulli sono ammessi solo su alcuni attributi e non su altri (es: chiavi non nulle).