Che materia stai cercando?

Gestione dati e archivi - il modello relazionale Appunti scolastici Premium

Slide relative all'esame di gestione dati e archivi del professor Claudio Gentile, cdl in scienze della comunicazione. Tra gli argomenti trattati il modello relazionale, la relazione matematica, tabelle e relazioni, le strutture nidificate, l'informazione incompleta..

Esame di Gestione dati e archivi docente Prof. C. Gentile

Anteprima

ESTRATTO DOCUMENTO

Modello relazionale Informazione incompleta

• ll modello relazionale impone ai dati una struttura rigida:

– le informazioni sono rappresentate per mezzo di ennuple

– solo alcuni formati di ennuple sono ammessi:

– quelli che corrispondono agli schemi di relazione

• I dati disponibili possono non corrispondere esattamente al

formato previsto, per varie ragioni. 24

Modello relazionale

Informazione incompleta: motivazioni

• Firenze è provincia, ma non conosciamo l'indirizzo della

prefettura

• Tivoli non è provincia: non ha prefettura

• Prato è “nuova” provincia: ha la prefettura? 25

Modello relazionale Tipi di valore nullo

• (almeno) tre casi differenti

– valore sconosciuto: esiste un valore del dominio, ma non

è noto (Firenze)

– valore inesistente: non esiste un valore del dominio (Tivoli)

– valore senza informazione: non è noto se esista o meno

un valore del dominio (Prato)

• I DBMS non distinguono i tipi di valore nullo (e quindi

implicitamente adottano il valore senza informazione) 26

Modello relazionale

Informazione incompleta: soluzioni?

• non conviene (anche se spesso si fa) utilizzare valori ordinari

del dominio (0, stringa nulla, “99”, etc), per vari motivi:

– potrebbero non esistere valori “non utilizzati”

– valori “non utilizzati” potrebbero diventare significativi

– in fase di utilizzo (ad esempio, nei programmi) sarebbe

necessario ogni volta tener conto del “significato” di questi

valori 27

Modello relazionale Informazione incompleta

nel modello relazionale

• Si adotta una tecnica rudimentale ma efficace:

– valore nullo: denota l’assenza di un valore del dominio (e

non è un valore del dominio)

• Formalmente, è sufficiente estendere il concetto di tupla: t[A],

per ogni attributo A, è un valore del dominio dom(A) oppure il

valore nullo NULL

• Si possono (e debbono) imporre restrizioni sulla presenza di

valori nulli 28

Modello relazionale Troppi valori nulli! 29

Modello relazionale Vincoli di integrità

• Esistono istanze di basi di dati che, pur sintatticamente corrette,

non rappresentano informazioni possibili per l’applicazione di

interesse. 30

Modello relazionale Vincolo di integrità

• Definizione

– proprietà che deve essere soddisfatta dalle istanze che

rappresentano informazioni corrette per l’applicazione ogni

vincolo può essere visto come una funzione booleana (o un

predicato) che associa ad ogni istanza il valore vero o

falso.

• Tipi di vincoli:

– vincoli intrarelazionali; casi particolari:

• vincoli su valori (o di dominio)

• vincoli di tupla

– vincoli interrelazionali 31

Modello relazionale Vincoli di integrità, motivazioni

• risultano utili al fine di descrivere la realtà di interesse in modo

più accurato di quanto le strutture permettano;

• forniscono un contributo verso la “qualità dei dati”

• costituiscono uno strumento di ausilio alla progettazione

(vedremo la “normalizzazione”)

• sono utilizzati dal sistema nella scelta della strategia di

esecuzione delle interrogazioni

Nota:

• non tutte le proprietà di interesse sono rappresentabili per

mezzo di vincoli esprimibili direttamente 32

Modello relazionale Vincoli di tupla

• Esprimono condizioni sui valori di ciascuna tupla,

indipendentemente dalle altre tuple.

• Una possibile sintassi: espressione booleana (con AND, OR e

NOT) di atomi che confrontano valori di attributo o espressioni

aritmetiche su di essi.

• Un vincolo di tupla è un vincolo di dominio se coinvolge un

solo attributo

• Esempi: (Voto AND (Voto

≥18) ≤30)

(Voto =30) OR NOT (Lode = “e lode”)

Lordo = (Ritenute + Netto) 33

Modello relazionale Identificazione delle tuple

• il numero di matricola identifica gli studenti:

– non ci sono due tuple con lo stesso valore sull’attributo

Matricola

• i dati anagrafici identificano gli studenti:

– non ci sono due tuple uguali su tutti e tre gli attributi

Cognome, Nome e Data di Nascita 34

Modello relazionale Vincoli di chiave

• chiave:

– insieme di attributi che identificano univocamente le tuple di

una relazione

• più precisamente:

– un insieme K di attributi è superchiave per una relazione r

se r non contiene due tuple distinte t e t con t [K] = t

1 2 1

[K]

2

– K è chiave per r se è una superchiave minimale (cioè non

contiene un’altra superchiave) per r 35

Modello relazionale

• Matricola è una superchiave:

– contiene un solo attributo e quindi è minimale

– Matricola è una chiave

• Cognome, Nome, Nascita è un’altra chiave:

– l’insieme Cognome, Nome, Nascita è superchiave

– nessuno dei suoi sottoinsiemi è superchiave 36

Modello relazionale

• la relazione non contiene ennuple fra loro uguali su Cognome e

Corso:

– in ogni corso di studio gli studenti hanno cognomi diversi;

– l’insieme { Cognome, Corso } è superchiave minimale e

quindi chiave

• possiamo dire che questa proprietà è sempre soddisfatta?

– No! In generale ci possono essere in un corso di studio

studenti con lo stesso cognome 37

Modello relazionale Chiavi, schemi e istanze

• i vincoli corrispondono a proprietà del mondo reale modellato

dalla base di dati;

• quindi interessano a livello di schema (con riferimento cioè a

tutte le istanze):

– ad uno schema associamo un insieme di vincoli e

consideriamo corrette (lecite, valide, ammissibili) solo le

istanze che soddisfano tutti i vincoli;

– singole istanze possono soddisfare ulteriori vincoli (“per pura

coincidenza”) 38

Modello relazionale Individuazione delle chiavi

• definendo uno schema di relazione, associamo ad esso i vincoli

di chiave che vogliamo siano soddisfatti dalle sue istanze

(corrette)

• li individuiamo

– considerando le proprietà che i dati soddisfano

nell’applicazione (il “frammento di mondo reale di

interesse”);

– notando quali insiemi di attributi permettono di identificare

univocamente le ennuple;

– e individuando i sottoinsiemi minimali di tali insiemi che

conservano la capacità di identificare le ennuple. 39

Modello relazionale

Individuazione delle chiavi, esempio

• Allo schema di relazione

STUDENTI(Matricola, Cognome, Nome, Corso, Nascita)

associamo i vincoli che indicano come chiavi gli insiemi di

attributi Matricola e Cognome, Nome, Nascita

• La relazione

è corretta, perché soddisfa i vincoli associati allo schema.

• Ne soddisfa anche altri. Ad esempio, Cognome, Corso è

chiave per essa. 40

Modello relazionale Esistenza delle chiavi

• poiché le relazioni sono insiemi, ogni relazione non può

contenere tuple distinte ma uguali fra loro:

– ogni relazione ha come superchiave l’insieme degli attributi

su cui è definita;

• poiché l’insieme di tutti gli attributi è una superchiave per ogni

relazione, ogni schema di relazione ha tale insieme come

superchiave;

• poiché l’insieme di attributi è finito, ogni schema di relazione ha

(almeno) una chiave 41

Modello relazionale Importanza delle chiavi

• l’esistenza delle chiavi garantisce l’accessibilità a ciascun dato

della base di dati

• ogni singolo valore è univocamente accessibile tramite:

– nome della relazione

– valore della chiave

– nome dell’attributo

• le chiavi sono lo strumento principale attraverso il quale

vengono correlati i dati in relazioni diverse (“il modello

relazionale è basato su valori”) 42

Modello relazionale Chiavi e valori nulli

• In presenza di valori nulli, i valori degli attributi che formano la

chiave

– non permettono di identificare le tuple come desiderato

– né permettono di realizzare facilmente i riferimenti da altre

relazioni 43

Modello relazionale Chiave primaria

• La presenza di valori nulli nelle chiavi deve essere limitata

• Soluzione pratica: per ogni relazione scegliamo una chiave (la

chiave primaria) su cui non ammettiamo valori nulli.

• Notazione per la chiave primaria: gli attributi che la compongono

sono sottolineati 44

Modello relazionale Vincoli di integrità referenziale

(“foreign key”)

• consente di correlare informazioni presenti in relazioni diverse

• le informazioni sono correlate attraverso valori comuni

utilizzando la natura “value based “ del modello relazionale 45


PAGINE

50

PESO

1.58 MB

AUTORE

Menzo

PUBBLICATO

+1 anno fa


DETTAGLI
Corso di laurea: Corso di laurea in scienze della comunicazione
SSD:
A.A.: 2013-2014

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher Menzo di informazioni apprese con la frequenza delle lezioni di Gestione dati e archivi e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Insubria Como Varese - Uninsubria o del prof Gentile Claudio.

Acquista con carta o conto PayPal

Scarica il file tutte le volte che vuoi

Paga con un conto PayPal per usufruire della garanzia Soddisfatto o rimborsato

Recensioni
Ti è piaciuto questo appunto? Valutalo!

Altri appunti di Gestione dati e archivi

Gestione dati e archivi - progettazione di basi di dati / metodologie e modelli
Appunto
Esame luglio 2006
Esercitazione
Esame giugno 2006
Esercitazione
Esame settembre 2006
Esercitazione