Ho individuato 2 entità: PUNTO 1) PROGETTARE UN DATABASE Iniziamo con la prima fase della progettazione ovvero quella concettuale Ho individuato 2 entità: AMICI LIBRI
Per l’entità LIBRI ho individuato i seguenti attributi: ID libro: codice univoco del libro Titolo libro: che definisce il titolo del libro oggetto del prestito Data restituzione: che indica la data in cui occorre restituire il libro
Le Relazioni tra le entità: 1 amico può chiedere in prestito più libri diversi 1 determinato libro può essere scelto da 1 solo amico (considerato che, per ogni libro esiste una sola copia in biblioteca) Libri Amici 1 : N 1 : 1
Definiamo le caratteristiche degli attributi: AMICO NOME CAMPO TIPO CAMPO DIMENSIONE VINCOLI NOTE ID amico Numerico 20 Primary key Contatore Nome/sopran_ nome amico Testo Intero lungo Not null
LIBRO NOME CAMPO TIPO CAMPO DIMENSIONE VINCOLI NOTE ID libro Numerico 10 Primary key Contatore Titolo libro Testo Intero lungo Unique Data restituzione Data Not null Fk ID amico 20 Foreign key Link alla tabella amico
Schema logico ∞ LIBRO AMICO ID libro ID amico 1 Titolo libro Nome/sopran. Amico LIBRO ID libro Titolo libro Data restituzione libro 1 ∞
Pazienti Ricoveri Reparti Medici Punto 2) Le relazioni 1:N 1:1 1:1 1:N Un paziente può effettuare molti ricoveri; un ricovero può essere collegato ad un solo paziente. Un ricovero avviene in un solo reparto; mentre ogni reparto può accogliere più ricoveri. Ogni reparto ha a disposizione più medici, mentre un medico può lavorare in un unico reparto. Reparti 1:N 1:1 Medici
Reparti Pazienti Nome campo Tipo Dimensioni Vincoli Commento ID reparto Testo 10 Primary key Contatore Nome reparto 40 Unique Pazienti Nome campo Tipo Dimensioni Vincoli Commento ID paziente AlfaNumerico 10 Primary key Contatore Cognome paziente Testo 30 Not null Nome paziente
Ricoveri Nome campo Tipo Dimensioni Vincoli Commento Data di arrivo Not null Data di uscita Fk pazienti Alfanumerico 10 Foreign key Link alla tabella pazienti Fk reparti Testo Link alla tabella reparti
Medici Nome campo Tipo Dimensioni Vincoli Commento ID medico Numerico Primary key Contatore Cognome medico Testo 30 Not null Nome medico Fk reparti 10 Foreign key Link alla tabella reparto