Schema E\R Biblioteca N 1 LIBRI CLIENTI 1 N 1 1 PRESTITI N N
Spiegazione modello Ogni libro può essere dato a prestito ad uno o più clienti (ovviamente non contemporaneamente). Ogni cliente può prendere a prestito uno o più libri nel corso del tempo. La relazione N a N fa nascere l’istanza PRESTITI che terrà traccia dei libri presi in prestito dalla clientela. La relazione N a N crea 2 relazioni di tipo 1 a N fra CLIENTI e PRESTITI e LIBRI e PRESTITI.
Schema logico – Entità CLIENTI Nome campo Tipo campo Dimensione Vincoli Note Cod_cliente Testo 20 Primary Key Si inserirà il soprannome Indirizzo 30 Not Null Num_Tel Numerico Intero lungo
Schema logico – Entità LIBRI Nome campo Tipo campo Dimensione Vincoli Note Titolo_libro Testo 50 Primary Key Si inserirà il titolo perché non ci sono libri con lo stesso titolo Autore 30 Not Null Casaed Genere Posizionamento 10
Schema logico – Entità PRESTITI Nome campo Tipo campo Dimensione Vincoli Note Cod_prestito Numerico Intero lungo Primary Key Codice progressivo prestito Codtitolo Testo 50 Foreign Key Si inserirà il titolo perché non ci sono libri con lo stesso titolo Codcliente 20 Si inserirà il soprannome Data_inizio Data gg/mm/aaaa Not Null Data inizio prestito libro Data_fine Data restituzione libro
Possibili Domini attributi CLIENTI Cod_cliente Indirizzo Num_Tel Ninnuzzo Via tal dei tali 24 0805432211 Mauruccio Via Caio 52 0803276544 Tonnaso Via tizio 63 3298765443
Possibili Domini attributi LIBRI Titolo_libro Autore Casaed Posizionamento Genere Signore degli anelli, Il Tolkien J.R. Bompiani Fz443 Fantasy Blade Runner Dick P.K. NULL Se654 Divina Commedia, La Alighieri D. Ih664
Possibili Domini attributi PRESTITI Cod_prestito Codtitolo Codcliente Data_inizio Data_Fine 1 Il signore degli anelli Mauruccio 22/01/2011 22/02/2011 2 Blade Runner Tonnaso 15/01/2011 15/04/2011
Seconda parte: Analisi Data Base Ospedale
Schema E\R – Definizione Relazioni 1 REPARTI PAZIENTI N 1 1 1 1 RICOVERI N N N MEDICI
Definizione PK & FK Entità PAZIENTI: (CODPrimary Key) Entità MEDICI: (MATRPrimary Key, REPARTOForeign Key da REPARTI) Entità REPARTI: Entità RICOVERI: (PAZIENTEForeign Key da PAZIENTI, REPARTOForeign Key da REPARTI, PAZIENTE e REPARTO insieme Primary Key)
Possibili attributi con Valore nullo Secondo me non è possibile individuare degli attributi che possano assumere valore nullo. In questo particolare caso vista l’importanza di tutti i campi in ogni tabella al fine di: poter ricostruire una cartella del paziente, individuare i medici operanti in un particolare reparto, tenere traccia della data di inizio e fine ricovero, sarebbe un errore dare la possibilità di non contabilizzare un campo all’atto dell’inserimento dei record. L’unico attributo che forse potrebbe assumere valore nullo potrebbe essere il campo PRIMARIO all’interno dell’entità REPARTI, il quale dovrebbe identificare il responsabile di quel particolare reparto ospedaliero.
Vincoli di integrità Cognome e Nome della tabella PAZIENTINot null Fine tabella RICOVERI > inizio tabella RICOVERI Cod in PAZIENTI = Paziente in RICOVERI Cod in REPARTI = Reparto in RICOVERI Reparto in MEDICI = Cod in REPARTI