PROGETTAZIONE DI UN DATABASE Corso di abilità informatiche corso avanzato Anno 2010/2011 CLD Magistrali Economia e Management Studentessa Mastrangelo Maristella PROGETTO DI un DB DOMINIO APPLICATIVO DBMS (DML) REQUISITI Schema concettuale Schema logico ( DDL) Progetto logico ANALISI DEI REQUISITI •Si vuole automatizzare la gestione dei prestiti in una biblioteca personale • A tale scopo bisognerà memorizzare i dati relativi a: o LIBRO o AMICO o PRESTITO • Il fine ultimo è ricavare le informazioni relative a chi possiede i libri. DOMINIO APPLICATIVO •Lo scopo dell'analisi del dominio applicativo è quello di comprendere a fondo i concetti, le dinamiche, le regole generali in cui il sistema dovrà essere impiegato, ovvero il contesto in cui il software dovrà agire. • Nel nostro caso il dominio applicativo è rappresentato da tutte le entità coinvolte nell’ attività di prestito. SCHEMA ENTITA’ - RELAZIONI 1 PRESTITO : N LIBRO N : 1 AMICO PROGETTAZIONE CONCETTUALE • La progettazione di un data base prevede una fase in cui occorre definire lo schema concettuale dei dati, la specifica delle classi di dati necessarie e le relazioni esistenti tra loro. Nel nostro caso sono state individuate le seguenti entità: • LIBRO • AMICO • PRESTITO • • • Ogni entità è descrivibile mediante gli attributi che la compongono. Ogni attributo è individuato da un nome, dal tipo e dalla dimensione che assume quella particolare entità. L’insieme dei possibili valori assunti da un attributo si chiama dominio dell’attributo PROGETTAZIONE CONCETTUALE LIBRO Per l’entità Libro sono stati individuati i seguenti attributi: IDLibro: codice univoco del libro Titolo: insieme dei titoli dei libri presenti nella biblioteca Autore: insieme dei nomi degli autori dei libri presenti in biblioteca Anno pubblicazione: anno pubblicazione del libro AMICO Per l’entità Amico sono stati individuati i seguenti attributi: IDAmico: codice univoco amico Nome: insieme dei possesori del libro Indirzzo: insieme degli indirizzi N.Telefono: insieme dei numeri di telefono degli amici Email: insieme dell’ e-mail degli amici PRESTITO Per l’entità Prestito sono stati individuati i seguenti attributi: IDPrestito: codice univoco prestito DataPrestito: data in cui si è stato dato in prestito il libro DataConsegna: data presunta di consegna del libro PROGETTAZIONE LOGICA DEFINIZIONE DELLE RELAZIONI • Una relazione è un’associazione che può essere stabilita tra archivi distinti di un data base. • Una relazione esiste già nell’ambito di un singolo archivio; infatti tra i campi di un record si stabilisce una relazione in quanto questi sono legati tra loro dal fatto di riferirsi al medesimo oggetto. La relazione uno-a-molti è caratterizzata dal fatto che ad un record del primo archivio (A) sono associati più record nel secondo archivio (B), mentre ad un record di B è associato un record di A. • PROGETTAZIONE LOGICA DEFINIZIONE DELLE RELAZIONI LIBRO AMICO N • • : 1 Un libro può essere prestato ad un solo amico. Un amico può prendere in prestito più libri. LIBRO N • • : Un libro può essere sottoposto ad un solo prestito. Un prestito può essere riferito a più libri. 1 PRESTITO PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI TABELLA LIBRO Nome campo Tipo campo Dimensione Vincoli IDLibro Numerico Intero Lungo Primary Key Titolo Testo 40 Not Null Autore Testo 40 Not Null Anno pubblicazione Data Amico Numerico TABELLA AMICO Prestito Numerico Note Not null Intero Lungo Foreign Key Link alla tabella amico Intero Lungo Foreign Key Link alla tabella prestito PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI TABELLA AMICO Nome campo Tipo campo Dimensione Vincoli IDAmico Numeric o Intero Lungo Primary Key Nome Testo 40 Not null Indirizzo Testo 40 Not null Telefono Testo 15 Not null Email Testo 30 Not null Note TABELLA PRESTITO Nome campo Tipo campo Dimensione Vincoli IDPrestito Numerico Intero Lungo Primary Key Data prestito Data Not null Data consegna Data Not null Note 2. DATABASE OSPEDALE PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI TABELLA PAZIENTI Nome campo Tipo Campo Dimensione Vincoli Cod Numerico Intero lungo Primary Key Cognome Testo 40 Not null Nome Testo 40 Note TABELLA RICOVERI Nome campo Tipo campo Dimensione Vincoli Note Paziente Numerico Intero Lungo Foreign Key Link alla tabella pazienti Inizio Data Fine Data Reparto Numerico Not null Intero Lungo Foreign Key Link alla tabella reparto PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI TABELLA REPARTI Nome campo Tipo campo Dimensione Cod Numerico Intero Lungo Nome Testo 40 Primario Numerico Intero Lungo Vincoli Note Primary Key Foreign Key TABELLA MEDICI Nome campo Tipo campo Dimensione Vincoli Matr Numerico Intero Lungo Primary Key Cognome Testo 40 Not null Nome Testo 40 Reparto Numerico Intero Lungo Foreign Key Note Link alla tabella Reparto