PROGETTAZIONE DI UN DATABASE Pergola Francesca 1. PROGETTARE IL SEGUENTE DATABASE IN RELAZIONE AI DUE ESEMPI PRESENTI IN PIATTAFORMA, MODULO 4, ESEMPI 1 E 2: CONSIDERARE LE INFORMAZIONI PER LA GESTIONE DEI PRESTITI DI UNA BIBLIOTECA PERSONALE. IL PROPRIETARIO PRESTA LIBRI AI SUOI AMICI, CHE INDICA SEMPLICEMENTE ATTRAVERSO IL NOME O IL SOPRANNOME (PER EVITARE OMONIMIE) E FA RIFERIMENTO AI LIBRI ATTRAVERSO I TITOLI (NON POSSIEDE LIBRI CON LO STESSO TITOLO). QUANDO PRESTA UN LIBRO PRENDE NOTA DELLA DATA PREVISTA DI RESTITUZIONE. DEFINIRE UNO SCHEMA DI RELAZIONE PER PRESENTARE QUESTE INFORMAZIONI, INDIVIDUANDO OPPORTUNI DOMINI PER I VARI ATTRIBUTI E MOSTRARNE UN’ISTANZA IN FORMA TABELLARE; INDICARE LA CHIAVE (O LE CHIAVI) DELLA RELAZIONE. VALUTARE LE EVENTUALI ESIGENZE DI RAPPRESENTAZIONE DEI VALORI NULLI, CON I BENEFICI E LE DIFFICOLTÀ CONNESSE. DATI: Elenco degli amici; Elenco dei libri; Data di restituzione. Dominio Applicativo: Tutte le attività coinvolte nel sistema Biblioteca personale, soprattutto nella gestione dei prestiti. SCHEMA ENTITÀ-RELAZIONI 1 : N LIBRI AMICI N PRESTITO DATA DI RICONSEGNA N PROGETTAZIONE CONCETTUALE Consideriamo le seguanti entità: Libri; Amici; Data Restituzione ATTRIBUTI DELL’ENTITÀ LIBRI: Id Libro: codice univoco di collocazione di ogni libri; Titolo del libro: insieme di tutti i libri presenti nella biblioteca personale. ATTRIBUTI DELL’ENTITÀ AMICI: Nome o soprannome amico: insieme di tutti i nomi/soprannomi degli amici; Indirizzo Amico: insieme di tutti gli indirizzi degli amici ATTRIBUTI DELL’ENTITÀ DATA RESTITUZIONE: Data di restituzione: insieme di tutte le date delle diverse restituzioni PROGETTAZIONE LOGICA DEFINIZIONE DELLE RELAZIONI 1 : N AMICI Un amico può avere in prestito più libri; Un libro può essere prestato ad una sola persona. LIBRI PROGETTAZIONE LOGICA DEFINIZIONE DELLE RELAZIONI 1 : N LIBRI N : 1 DATA DI RESRITUZIONE N : N Ad un libro possono essere associa più date di restituzione Un stessa data di restituzione può essere associata a più libri PRESTI TO ATTRIBUTI DELL’ENTITÀ PRESTITO: Data di inizio prestito: insieme delle diverse date in cui è avvenuto un prestito; Campo link alla tabella Amici: definisce l’amico che ha avuto in prestito il libro Campo link alla tabella Libri: definisce il libro in prestito. PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI Tabella Amici Nome Campo Tipo Campo Dimensione Vincoli Nome amico Testo Interno lungo Primary Key Indirizzo amico Testo Interno lungo Unique Note Tabella Libri Nome campo Tipo Campo Dimensione Vincoli Id Libro Numerico Interno Lungo Primary Key Titolo Libro Testo Interno Lungo Unique Note PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI Tabella Data di restituzione Nome Campo Tipo Campo Dimensione Vincoli DtRestituzio ne Data Primary Key Note Tabella Prestito Nome Campo Tipo Campo Dimensione DtInizioPresti Data to FkAmicoPres tito Vincoli Note Primary Key Numerico Interno lungo Foreing Key Link alla tabella amici FkLibroPresti Numerico to Interno lungo Foreing Key Link alla tabella Data restituzione SCHEMA LOGICO LIBRI 1 1 IdLibro TitoloLibr o ∞ PRESTITO DATA RICONSEGNA DtRestiruzione 1 DtInizioPresti ∞ to FkAmicoLibro FkLibroPrestit o ∞ AMICI NomeAmico IndirizzoAmico 2. SI FACCIA IL DAWNLOAD DELLA BASE DI DATI (FIGUA PDF) SCARICABILE AL LINK “BASE DATI OSPEDALE” CHE È PRESENTE NELLA SEZIONE “COMPITI”. INDIVIDUARE LE CHIAVI ED I VINCOLI DI INTEGRITÀ REFERENZIALE CHE SUSSISTONO NELLA BASE DI DATI IN FIGURA E CHE È RAGIONEVOLE ASSUMERE SIANO SODDISFATTI DA TUTTE LE BASI DI DATI SULLO STESSO SCHEMA. INDIVIDUARE ANCHE GLI ATTRIBUTI SUI QUALI POSSA ESSERE SENSATO AMMETTERE VALORI NULLI. PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI Tabella Pazienti Nome Campo Tipo Campo Dimensione Vincoli CodPazienti Numerico 4 Primary Key CognPazienti Testo Interno Lungo Unique NmPazienti Testi Interno Lungo Unique Note PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI Tabella Reparti Nome Campo Tipo Campo Dimensione Vincoli CodReparto Testo 1 Primary Key NomeReparto Testo Interno Lungo Unique CodPrimario 3 Unique Numerico Note PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI Tabella Ricoveri Nome Campo Tipo Campo Dimensione Vincoli Note InizioRicover o Data Primary Key FineRicovero Data Not Null FkPazientiRi covero Numerico 3 Foreing Key Link alla tabella Pazienti FkRepartoRi covero Testo 1 Foreing Key Link alla tabella Repato PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI Tabella Medici Nome Campo Tipo Campo Dimensione Vincoli CodPrimario Numerico 3 Primary Key NomeMedico Testo Interno Lungo Unique CognMedico Testo Interno Lungo Unique CodReparto Testo 1 Unique Note