1° ESERCIZIO
L’obiettivo è la CREAZIONE di un DATABASE necessario per la gestione dei
prestiti di una BIBLIOTECA PERSONALE.
Il primo passo da compiere consiste nell’individuare le ENTITA’ esistenti:
 AMICI
 LIBRI
 PRESTITI
Successivamente è necessario stabilire le RELAZIONI esistenti attraverso il
seguente SCHEMA ENTITA’-RELAZIONI:
1
AMICI
N:N
LIBRI
PRESTITI
AD UN AMICO POSSIAMO PRESTARE N LIBRI
UN LIBRO PUO’ ESSERE PRESTATO AD N AMICI E IN DATE DIFFERENTI
2
DEFINIZIONE CARATTERISCHE DEGLI ATTRIBUTI
TABELLA AMICI
NOME CAMPO TIPO
CAMPO
DIMENSIONE
VINCOLI
ID AMICO
INTERO
LUNGO
PRIMARY
KEY
20
NOT NULL
NUMERICO
SOPRANNOME TESTO
AMICO
NOTE
TABELLA LIBRI
NOME
CAMPO
TIPO
CAMPO
DIMENSIONE
VINCOLI
ID LIBRO
NUMERICO
INTERO
LUNGO
PRIMARY KEY
TITOLO
TESTO
30
NOT NULL
NOTE
3
TABELLA PRESTITI
NOME CAMPO
TIPO
CAMPO
DIMENSION
E
VINCOLI
NOTE
ID PRESTITO
NUMERICO INTERO
LUNGO
PRIMARY
KEY
FKAMICO
PRESTITO
NUMERICO INTERO
LUNGO
FOREIGN
KEY
LINK ALLA
TABELLA
AMICI
FKLIBRO
PRESTITO
NUMERICO INTERO
LUNGO
FOREIGN
KEY
LINK ALLA
TABELLA
LIBRI
DATA INIZIO
PRESTITO
DATA
NOT NULL
DATA
PRESUNTA
RESTITUZIONE
DATA
4
ISTANZA TABELLARE
TABELLA AMICI
ID AMICO
SOPRANNOME
1
SILVIA LA VOLPE
2
ANDREA IL BASSO
3
ANNA LA VIP
4
FRANCESCA LA BIONDA
5
TABELLA LIBRI
ID LIBRO
TITOLO
1
IL FU MATTIA PASCAL
2
AMLETO
3
LETTERA AD UN BAMBINO MAI NATO
4
I LOVE SHOPPING
6
TABELLA PRESTITI
ID
PRESTITO
AMICO
LIBRO
DATA INIZIO DATA
PRESTITO
PRESUNTA
RESTITUZIONE
1
1
3
15/12/2010
01/04/2011
2
2
1
10/02/2011
10/06/2011
3
3
4
20/01/2011
4
4
2
28/12/2010
24/04/2011
7
INDIVIDUAZIONE VALORI NULLI
L’UNICO ATTRIBUTO CHE PUO’ AMMETTERE VALORI NULLI E’ LA
DATA PRESUNTA DI RESTITUZIONE
IN QUANTO E’ POSSIBILE CHE PER ALCUNI LIBRI NON SIA STATA
FISSATA UNA DATA DI RESTITUZIONE.
NON E’ POSSIBILE ACCETTARE VALORI NULLI SUGLI ATTRIBUTI
TITOLO E
SOPRANNOME IN QUANTO E’ STRETTAMENTE
NECESSARIO SAPERE
QUALE LIBRO E’ STATO PRESTATO E
SOPRATTUTTO A CHI E’ STATO PRESTATO.
8
2° ESERCIZIO
CHIAVI PRIMARIE E VINCOLI DI INTEGRITA’
Nella tabella PAZIENTI: Primary key è l’attributo “COD”
Nella tabella REPARTI: Primary key è l’attributo “COD”
Foreign Key è l’attributo “Primario” (link alla tabella MEDICI)
Nella tabelle MEDICI:
Primary key è l’attributo “MATR”
Foreign Key è l’attributo “REPARTO” (link alla tabella
REPARTI)
Nella tabella RICOVERI: Primary key è l’attributo “INIZIO”
Foreign Key è l’attributo “PAZIENTE” (link alla tabella
PAZIENTI; l’attributo “ REPARTO” (link alla tabella REPARTI)
VALORI NULLI
L’attributo che potrebbe assumere valore nullo è FINE nella relazione RICOVERI: nel
momento in cui viene ricoverato un paziente viene annotata la data di inizio, ma non
risulta essere strettamente necessario annotare quella di fine .
9
Scarica

document