Oggetto compito:
Progettazione di un Data Base
Studente:
Sasso Marco Roberto
Magistrale Marketing
Matricola: 565734
Prima Parte:
Progettazione di un Data Base
Analisi dei requisiti:
Si vuole automatizzare la gestione dei
prestiti di una biblioteca personale.
 A tale scopo bisognerà memorizzare i
dati relativi a:

 Proprietari
 Amici
 Libri
Dominio applicativo:

Il dominio applicativo è rappresentato da
tutte le entità coinvolte nel sistema di
gestione dei prestiti della biblioteca
personale
Schema ENTITA’- RELAZIONI:
1
:
PROPRIETARI
N
AMICI
N
PRESTITI
LIBRI
N
Progettazione concettuale:

Nel nostro caso sono state individuate le
seguenti entità:
 Proprietari
 Amici
 Libri
Progettazione concettuale:
PROPRIETARI

Per l’entità “Proprietari” sono stati
individuati i seguenti attributi:
 Id Proprietario: codice univoco del
Proprietario
 Nome Proprietario
Progettazione concettuale:
AMICI

Per l’entità “Amici” sono stati individuati i
seguenti attributi:
 Id Amico: insieme degli identificativi di tutti gli





amici
Nome Amico: insieme di tutti i nomi degli amici
Soprannome Amico: insieme di tutti i
soprannomi degli amici
Telefono Amico: insieme dei numeri di telefono
di tutti gli amici
Indirizzo Amico: insieme di tutti gli indirizzi degli
amici
Proprietario: proprietario di appartenenza
Progettazione concettuale:
LIBRI

Per l’entità “Libri” sono stati individuati i
seguenti attributi:
 Id Libro: codice univoco dei libri
 Titolo Libro: insieme di tutti i titoli dei libri
 Autore Libro: insieme di tutti gli autori dei
libri
 Data di restituzione: insieme delle date di
restituzione dei libri
Progettazione logica: definizione delle relazioni
PROPRIETARI
1
:
N
AMICI
Un amico può servirsi da un solo proprietario
 Un proprietario può avere più amici

Progettazione logica: definizione delle relazioni
1
:
N
AMICI
LIBRI
N
:
1
N
:
N
PRESTITI
Un amico può scegliere più libri
 Un libro può essere scelto da più amici

Progettazione logica: definizione delle relazioni
PRESTITI

Dalla relazione N : N deriva un’ulteriore
entità (PRESTITI) i cui attributi saranno i
seguenti :
 Codice prestito: codice univoco del prestito
 Campo link alla tabella Amici: definisce
l’amico che ha preso in prestito il libro
 Campo link alla tabella Libri: definisce il libro
prestato
 Data del prestito: definisce la data in cui è
stato effettuato il prestito
Progettazione logica: definizione delle
caratteristiche degli attributi
TABELLA
PROPRIETARI
Nome Campo Tipo Campo Dimensione
Vincoli
Id Proprietario Numerico
Intero lungo
Primary
Key
Nome
Proprietario
50
Unique
Testo
Note
Progettazione logica: definizione delle
caratteristiche degli attributi
TABELLA
AMICI
Nome Campo
Tipo Campo Dimensione
Vincoli
Id Amico
Numerico
Intero lungo
Primary
Key
Nome Amico
Testo
25
Not null
Soprannome
Testo
30
Telefono Amico
Numerico
Intero lungo
Indirizzo Amico
Testo
40
Fk Proprietario
Numerico
Intero lungo
Note
Può essere anche
assente e quindi
nullo
Foreign
key
Link alla tabella
Proprietari
Progettazione logica: definizione delle
caratteristiche degli attributi
TABELLA
LIBRI
Nome Campo
Tipo
Campo
Dimensione
Id Libro
Numerico
Intero lungo
Primary
Key
Titolo libro
Testo
40
Unique
Autore Libro
Testo
40
Data restituzione Data
Vincoli
Not Null
Note
Progettazione logica: definizione delle
caratteristiche degli attributi
TABELLA
PRESTITI
Nome Campo
Tipo
Campo
Dimensione
Vincoli
Note
Codice prestito
Numerico
Intero lungo
Primary
Key
Fk Tabella Amici
Numerico
Intero lungo
Foreign
Key
Link alla
tabella Amici
Fk Tabella Libri
Numerico
Intero lungo
Foreign
Key
Link alla
tabella Libri
Data del prestito
Data
Schema logico
Seconda Parte:
Individuazione di chiavi, vincoli e valori nulli
Individuazione Chiavi
Chiave primaria: MATRICOLA
Chiave esterna: Fk reparti (REPARTO)
N
Chiave primaria:
CODICE
:
MEDICI
1
REPARTI
N
RICOVERI
?? Manca chiave prima
PAZIENTI
N
Chiave primaria:
CODICE
Chiavi esterne:
Fk pazienti (PAZIENTE)
Fk reparti (REPARTO)
Individuazione Vincoli e Valori Nulli

MEDICI



REPARTI


PAZIENTI
Non ci devono essere medici con la stessa
matricola (MATRICOLA UNIQUE)
In un reparto ci possono lavorare più medici (la
voce Reparto in Medici non è unique e non è null)
Non tutti i medici possono essere primari
Campo primario= not null e unique (un medico deve
essere primario di un solo reparto)
Il campo Nome Reparto deve essere unique
Non possono esserci codici uguali (codice
unique)
Individuazione Vincoli e Valori Nulli


RICOVERI



Manca la chiave primaria
Il campo Fine deve essere “successivo”
temporalmente al campo Inizio
Uno stesso paziente non può essere ricoverato
nello stesso periodo in 2 reparti diversi
Il campo Inizio e il campo Fine devono essere non
nulli
Il campo Reparto deve essere not null
Scarica

2° Compito Progettazione di un Data Base Sasso