La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Secondo Compito: PROGETTAZIONE DI UN DATABASE Claudia Angione

Presentazioni simili


Presentazione sul tema: "Secondo Compito: PROGETTAZIONE DI UN DATABASE Claudia Angione"— Transcript della presentazione:

1 Secondo Compito: PROGETTAZIONE DI UN DATABASE Claudia Angione
Mat: CdL Magistrale: Economia e Management

2 ANALISI DEI REQUISITI TRACCIA n.1
Si vuole automatizzare la gestione dei libri prestati da un soggetto proprietario, agli amici. A tale scopo bisognerà registrare dei dati relativi a: Libri; Amici; Il fine ultimo è ricavare le informazioni per la gestione dei prestiti di una biblioteca.

3 DOMINIO APPLICATIVO Il dominio applicativo è rappresentato da tutte le entità coinvolte nel sistema Biblioteca, in particolare quelle relative alla gestione del prestito dei libri.

4 SCHEMA DELLE RELAZIONI
Amici Libri : N N : 1 Prestito

5 PROGETTAZIONE CONCETTUALE
Nel nostro caso sono state individuate le seguenti entità: LIBRI AMICI

6 PROGETTAZIONE LOGICA DEFINIZIONE DELLE RELAZIONI
LIBRI AMICI N : N : N PRESTITO

7 PROGETTAZIONE CONCETTUALE
LIBRI Per l’entità LIBRI sono stati individuati i seguenti attributi: Id Libri: Codice Univoco di Libri Titolo Libro: insieme di tutti i libri presenti nella Biblioteca personale

8 PROGETTAZIONE CONCETTUALE
AMICI Per l’entità AMICI sono stati individuati i seguenti attributi: Id Amici: Codice univoco amici Soprannome Amico Telefono Amico Indirizzo Amico Amico

9 PROGETTAZIONE LOGICA Nella determinazione delle relazioni tra l’entità LIBRO e l’entità AMICI si stabilisce una relazione molti-a-molti perché: 1 libro può essere prestato a N amici; ed 1 amico può prendere a prestito N libri.

10 PROGETTAZIONE LOGICA DEFINIZIONE DELLE RELAZIONI
Dalla relazione N : N deriva una ulteriore entità (PRESTITO) i cui attributi sono i seguenti: Id Prestito; Link alla Tabella Libri; Link alla Tabella Amici; Data Prestito; Data Restituzione.

11 PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI
Tabella LIBRI Nome Campo Tipo campo Dimensione Vincoli Note Id Libro Numerico Intero Lungo Primary Key TitoloLibro Testo 50 Not Null

12 PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI
Tabella AMICI Nome Campo Tipo Campo Dimensioni Vincoli Note Id Amico Numerico Intero Lungo Primary Key SoprannomeAmico Testo 20 Not Null TelefonoAmico 10 IndirizzoAmico 40 Amico

13 PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI
Tabella PRESTITO Nome Campo Tipo Campo Dimensioni Vincoli Note Id Prestito Numerico Intero Lungo Primary Key FkLibroPrestito Foreign Key Link alla Tabella Libri FkAmiciPrestito Link alla Tabella Amici DataPrestito Data Not Null DataRestituzione

14 Quindi nel caso in questione le chiavi primarie sono:
Tabella Libro: IdLibro; Tabella Amici: IdAmico; Tabella Prestito: IdPrestito. Le Chiavi Esterne sono presenti nella Tabella Prestiti: FkLibroPrestito; FkAmiciPrestito rispettivamente collegate alla tabella LIBRO e alla tabella AMICI. Nel caso in questione, sarebbe preferibile creare il vincolo di assenza di valori nulli nel dominio, in relazione alle chiavi primarie delle diverse entità.

15 BASE DI DATI OSPEDALE TRACCIA n. 2 Reparti Pazienti Ricoveri Cod. Nome
Primario A Chirurgia 203 B Pediatria 574 C Medicina 530 Reparti Cod Cognome Nome A102 Rossi Luca B372 Neri Piero B543 Mario B444 Mori Gino Pazienti Paziente Inizio Fine Reparto A102 2/05/01 9/05/01 A 2/12/01 2/01/02 B444 1/12/02 2/01/03 B Ricoveri

16 Chiavi Primarie: Medici
Matr Nome Cognome Reparto 203 Neri Piero A 574 Bisi Mario B 530 Belli Nicola C Medici Chiavi Primarie: IdPaziente: fa riferimento al “codice” del Paziente; IdReparto: fa riferimento al “codice” del Reparto; IdRicovero: volendo potremmo inserire una chiave IdRicovero che corrisponderà alla tripla univoca Paziente, Reparto, DataRicovero. È chiaro però osservare che se in un unico giorno il paziente viene spostato in più reparti, ciò che andrà a differenziare IdRicovero sarà l’ora nel quale il paziente viene ricoverato nei diversi reparti; IdMedico: fa riferimento alla “Matricola” di ognuno di essi.

17 Chiavi Esterne: Per quanto concerne la Tabella Reparti: la “Matricola” della Tabella Medici è la chiave esterna collegata a Primario (presente in Reparti). Per la Tabella Medici: il “Codice” della Tabella Reparti è la chiave esterna collegata a Reparto (presente in Medici). Per la Tabella Ricoveri essendo la Tabella risultante dalla relazione N:N tra Reparti e Pazienti presenterà le chiavi esterne relative a queste due Tabelle: il “Codice” della Tabella Pazienti è la chiave esterna collegata a Paziente (presente in Ricovero) e il “Codice” della Tabella Reparti è la chiave esterna collegata a Reparto (presente sempre in Ricovero).

18 Valori Nulli: Come valore nullo indichiamo la Data di Fine Ricovero presente nella Tabella Ricoveri in quanto la degenza potrebbe essere superiore a quella indicata.


Scaricare ppt "Secondo Compito: PROGETTAZIONE DI UN DATABASE Claudia Angione"

Presentazioni simili


Annunci Google