Relazioni e attributi

lezione
lezione
Relazioni e attributi
Tipo di risorsa Tipo: lezione
Materia di appartenenza Materia: Basi di dati 1

Introduzione

modifica

Tre 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

modifica

Per 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).