1 / 19

Progettazione di database

Progettazione di database. Gestione della biblioteca personale Pasquale de Tullio 565721. Analisi dei requisiti . Si vuole progettare un DB per la gestione della biblioteca personale. È emerso che: Il proprietario presta libri ai suoi amici

mabli
Download Presentation

Progettazione di database

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Progettazione di database Gestione della biblioteca personale Pasquale de Tullio 565721

  2. Analisi dei requisiti Si vuole progettare un DB per la gestione della biblioteca personale. È emerso che: • Il proprietario presta libri ai suoi amici • quando presta un libro prende nota della data prevista di restituzione • fa riferimento ai libri attraverso i titoli

  3. Dominio applicativo Nel nostro caso il dominio applicativo è rappresentato da tutte le entità coinvolte nel sistema Biblioteca personale in particolare quelle relative alla gestione del prestito dei libri ai propri amici

  4. Schema entità - relazioni Proprietari Amici 1 n 1 Prestiti n Libri n 1 n n

  5. Progettazione concettuale Nel nostro caso sono state individuate le seguenti entità: • Proprietari • Amici • Libri

  6. Progettazione concettuale Proprietari Sono stati individuati i seguenti attributi: Id proprietario Nome proprietario

  7. Progettazione concettuale Amici Sono stati individuati i seguenti attributi: Id amico Nome amico Soprannome amico Tel amico Indirizzo amico

  8. Progettazione concettuale Libri Sono stati individuati i seguenti attributi: Id libro Titolo libro Autore libro Genere libro Data restituzione

  9. Progettazione logicadefinizione delle relazioni • Un amico può avere un solo proprietario • Un proprietario può avere più amici Proprietari Amici 1 n

  10. Progettazione logicadefinizione delle relazioni • Più libri posso essere prestati ad un amico • Più amici possono avere in prestito un libro Amici Libri n n

  11. Progettazione logicadefinizione delle relazioni n 1 Libri Amici 1 n N : N Prestiti

  12. Progettazione logicadefinizione delle relazioni Dalla relazione N:N deriva l’entità PRESTITI con i seguenti attributi: Id prestito Campo link a tabella Amici: definisce a chi è stato prestato il libro Campo link a tabella Libri: definisce che libro è stato prestato Data del prestito

  13. Progettazione logicadefinizione degli attributi Tabella Proprietari

  14. Progettazione logicadefinizione degli attributi Tabella Amici

  15. Progettazione logicadefinizione degli attributi Tabella Libri

  16. Progettazione logicadefinizione degli attributi Tabella Prestiti

  17. Caso Ospedale

  18. Caso Ospedale Chiavi: Tabella Ricoveri sono FK Pazienti : “Paziente” FK Reparti: “Reparto” Manca Id Ricovero Tabella Pazienti è PK: Cod Tabella Reparti è PK: Cod Tabella Medici è Pk: matr Fk: reparto

  19. Caso Ospedale • Vincoli di integrità referenziale e gli attributi sui quali si possono ammettere valori nulli: • non ci possono essere medici con stessa Matricola (matr di Medici: Unique) • un medico deve essre primario di un solo reparto (voce primario di Reparti deve essere not null e unique) • in un reparto ci possono essere più medici, non tutti i medici possono essere primari (voce reparto di medici not unique e not null, ciò nel caso in cui nella tabella medici ci siano altri record) • non ci possono essere pazienti con lo stesso codice (voce cod paziente unique) • manca id ricovero in ricoveri • non ci possono essere reparti con lo stesso nome (voce nome reparto deve essere unique) • Data fine ricovero deve essere successiva data inizio ricovero • Lo stesso paziente non può essere ricoverato nello stesso periodo in reparti diversi • data inizio e data fine devono essere not null • nome reparto deve essere not null

More Related