Progettazione di un DataBase
Dominio applicativo: biblioteca personale; Fine ultimo:ricavare le informazioni relative ai prestiti di libri effettuati agli amici Analisi dei requisiti relativi a: -AMICI; - LIBRI.
Schema entità – relazioni AMICILIBRI PRESTITI 1 : N N : 1 1 : N 1 : N
Progettazione concettuale Per ciascuna entità vengono definiti gli attributi. AMICI: id amico, nome o soprannome, , telefono; LIBRI: id libro, titolo libro, autore, data restituzione.
Progettazione logica Definizione delle relazioni: -1 libro può essere prestato a più amici, relazione 1:N; -1 amico può ricevere in prestito più libri, relazione 1:N. Ne deriva una relazione N:N, da cui scaturisce lentità PRESTITI, i cui attributi sono: id prestito, data prestito, titolo libro, nome amico.
Definizione delle caratteristiche degli attributi NOME CAMPO TIPO CAMPO DIMENSIONEVINCOLINOTE ID AMICONUMERICOINTERO LUNGO PRIMARY KEY NOME O SOPRANNOME AMICO TESTO30UNIQUE TESTO40NOT NULL TELEFONONUMERICOINTERO LUNGO NOT NULL TABELLA AMICI
TABELLA LIBRI NOME CAMPO TIPO CAMPODIMENSIONEVINCOLINOTE ID LIBRONUMERICOINTERO LUNGO PRIMARY KEY TITOLO LIBROTESTO40UNIQUE AUTORETESTO30NOT NULL FK PRESTITODATAFOREIGN KEY LINK ALLA TABELLA PRESTITI
TABELLA PRESTITI NOME CAMPO TIPO CAMPODIMENSIONEVINCOLINOTE ID PRESTITONUMERICOINTERO LUNGO PRIMARY KEY DATA RESTITUZIONE DATANOT NULL FK LIBRONUMERICOINTERO LUNGO FOREIGN KEY LINK ALLA TABELLA LIBRI FK AMICONUMERICOINTERO LUNGO FOREIGN KEY LINK ALLA TABELLA AMICI
SECONDO ESERCIZIO Le chiavi del DataBase OSPEDALE sono rappresentate dal dominio COD della tabella PAZIENTI, dal dominio COD della tabella REPARTI e dal dominio MATR della tabella MEDICI. I vincoli di integrità referenziale sono corretti e rappresentano informazioni possibili per lapplicazione, con coerenza interna dei dati. Essi sono appropriati in ogni campo, ma secondo me sarebbe meglio mettere nella tabella RICOVERI un ID RICOVERI come primary key, in modo da identificare in modo univoco un ricovero, facendo una tabella a parte di date INIZIO e FINE ricoveri. I vincoli sono tra gli attributi COD della relazione PAZIENTI e PAZIENTE di RICOVERI, tra COD di REPARTI e REPARTO di RICOVERI e MATR di MEDICI e PRIMARIO di REPARTI. I valori nulli sono NOME e COGNOME di PAZIENTI e di MEDICI, NOME di REPARTI e INIZIO e FINE di RICOVERI.