Compito n.2
Progettazione di un DataBase
Il Compilatore
Di Lorenzo Salvatore
Esercizio n.1
SCHEMA ENTITA’ - RELAZIONI
1 : N
Amici
Libri
Esercizio n.1
Tabella Libri
Tabella Amici
ID
Amici
Nome
Soprannome
101
Biagio
Rosso
102
Biagio
Grosso
103
Carlo
Brocco
104
Domenico
Secco
ID
Libri
Titolo
Data
Amici
prevista di
restituzione
L201
Guerra e Pace 01/02/2011
102
A222
Zanna Bianca
02/02/2011
101
C103
Oliver Twist
03/02/2011
101
A127
Robinson
Crusoe
04/02/2011
103
Progettazione logica
Definizione delle caratteristiche degli attributi
Tabella Amici
Nome Campo
Tipo Campo
Dimensioni
Vincoli
ID Amici
Numerico
Intero
Primary key
Nome
Testo
20
Not null
Soprannome
Testo
20
Not null
Note
Progettazione logica
Definizione delle caratteristiche degli attributi
Tabella Libri
Nome Campo
Tipo Campo Dimensioni
Vincoli
ID Libri
Testo
Intero
Primary key
Titolo
Testo
40
Not null
Data prevista
di restituzione
Data/ora
8
Not null
Fk Amici
Numerico
Intero
Foreign key
Note
Link alla
Tabella
Amici
RISPOSTE
1.
2.
E’ emersa l’esigenza di rappresentazione di valori nulli per i valori
dell’attributo Nome relativi agli Amici con ID 101 e 102 perché, essendo
omonimi (si chiamano entrambi Biagio) sono definiti unicamente dal
Soprannome (il quale evita le omonimie): per questo motivo i loro nomi
possono essere omessi ed essere sostituiti da valori nulli, in quanto sono
valori senza informazione.
E’ emersa altresì l’esigenza di rappresentare valori nulli per i valori
dell’attributo Soprannome relativi agli Amici con ID 103 e 104 perché,
non essendo omonimi (si chiamano rispettivamente Carlo e Domenico)
sono definiti unicamente dal nome: per questo motivo i loro soprannomi
possono essere omessi ed essere sostituiti da valori nulli, in quanto
sono valori senza informazione.
In generale i valori nulli evitano confusione (perché vengono utilizzati al
posto di valori inappropriati).
La presenza di valori nulli nelle Chiavi genera difficoltà poiché in tali
casi i valori delle Chiavi non consentono di identificare le ennuple e di
realizzare facilmente i riferimenti da altre relazioni: per queste ragioni la
presenza di valori nulli nelle chiavi deve essere limitata.
Esercizio 2
Base di Dati Ospedale
Tabella Pazienti
Cod.
Cognome
Tabella Reparti
Nome
Cod.
Nome
Primario
A102
Rossi
Luca
B372
Neri
Piero
A
Chirurgia
203
B543
Neri
Mario
B
Pediatria
574
B444
Neri
Gino
C
Medicina
530
Tabella Ricoveri
Fine
Tabella Medici
Paziente
Inizio
Reparto
Matr. Cognome Nome
Reparto
A102
2/05/01 9/05/01
A
203
Neri
Piero
A
A102
2/12/01 2/01/02
B
574
Bisi
Mario
B
B444
1/12/02 2/01/03
C
530
Belli
Nicola
C
Progettazione logica
Definizione delle caratteristiche degli attributi
Tabella Pazienti
Nome Campo
Tipo Campo Dimensioni
Vincoli
Cod.
Testo
Intero
Primary key
Cognome
Testo
20
Not null
Nome
Testo
20
Not null
Note
Progettazione logica
Definizione delle caratteristiche degli attributi
Tabella Ricoveri
Nome Campo
Tipo Campo Dimensioni
Vincoli
Paziente
Testo
Intero
Primary key
Inizio
Data/ora
8
Not null
Fine
Data/ora
8
Not null
Reparto
Testo
Byte
Foreign key
Note
Link alla
Tabella
Reparti
Progettazione logica
Definizione delle caratteristiche degli attributi
Tabella Reparti
Nome Campo
Tipo Campo Dimensioni
Vincoli
Cod.
Testo
Byte
Primary key
Nome
Testo
20
Not null
Primario
Numerico
Intero
Note
Foreign key Link alla
Tabella
Medici
Progettazione logica
Definizione delle caratteristiche degli attributi
Tabella Medici
Nome Campo
Tipo Campo Dimensioni
Vincoli
Matr.
Numerico
Intero
Primary key
Nome
Testo
20
Not null
Cognome
Testo
20
Not null
Reparto
Testo
Byte
Note
Foreign key Link alla
Tabella
Reparti
RISPOSTE
1.
Vincolo di integrità referenziale tra l’attributo Cod. della Relazione Pazienti e la
Relazione Ricoveri.
Vincolo di integrità referenziale tra l’attributo Reparto della Relazione Ricoveri
e la Relazione reparti.
Vincolo di integrità referenziale tra gli attributi Cod. e Primario della Relazione
Reparti e la Relazione Medici.
2.
Chiavi:
Cod. nella Tabella Pazienti;
Paziente e Inizio nella Tabella Ricoveri;
Cod. nella Tabella Reparti ;
Matr. nella Tabella Medici;
3.
Gli Attributi sui quali può essere sensato ammettere valori nulli sono:
Cognome e Nome nella Tabella Pazienti;
Fine nella Tabella Ricoveri;
Nome nella Tabella Reparti:
Cognome e Nome nella Tabella Medici.
Scarica

COMPITO N.2