Secondo compito Progettazione di un DataBase - Progettazione di un database: gestione dei prestiti di una biblioteca personale gestione dei prestiti di una biblioteca personalegestione dei prestiti di una biblioteca personale Base dati OSPEDALE Base dati OSPEDALE - Chiavi, attributi nulli e vincoli referenziali della Base dati OSPEDALE Base dati OSPEDALE
Gestione prestiti di una biblioteca personale Entità LIBRI AMICI La relazione tra le due è di n:n Ad ogni amico posso prestare uno o più libri; Ogni libro posso prestarlo ad uno o più amici. Da cui: PRESTITI
Gestione prestiti di una biblioteca personale PRESTIT I LIBRI AMICI 1 : N N : 1 Schema Entità-Relazioni
Gestione prestiti di una biblioteca personale Tabella LIBRI NOME CAMPOTIPO CAMPODIMENSIONEVINCOLO TITOLOTESTO20CHIAVE PRIMARIA AUTORETESTO20 SCAFFALENUMERICO3
Gestione prestiti di una biblioteca personale Tabella AMICI NOME CAMPOTIPO CAMPODIMENSIONEVINCOLI NOMETESTO30CHIAVE PRIMARIA INDIRIZZOTESTO30 TELEFONONUMERICO10
Gestione prestiti di una biblioteca personale Tabella PRESTITI NOME CAMPOTIPO CAMPODIMENSIONEVINCOLINOTE TITOLOTESTO20CHIAVE ESTERNA NOMETESTO20CHIAVE ESTERNA DATA PRESTITODATANOT NULL DATA RESTITUZIONE DATACHECK IF > (DATA PRESTITO)
Gestione prestiti di una biblioteca personale Considerazioni conclusive.Non sono accettabili valori nulli per le Chiavi primarie (Titolo, Soprannome) perchè ho necessità di identificare quale libro ho prestato e a quale dei miei amici, elementi fondamentali del prestito..Nella tabella AMICI il soprannome individua univocamente l'amico; nella tabella LIBRI il titolo individua univocamente ogni libro..Nella tabella PRESTITI "impongo" all'utente di indicare "Data restituzione" posteriore alla data del prestito.
"Base dati Ospedale" Chiavi Tra le tabelle PAZIENTI e REPARTI esiste una relazione n:n : la si scompone in RICOVERI. Le chiavi primarie sono Cod per PAZIENTI, "Cod" per REPARTI – entrambe chiavi esterne nella tabella RICOVERI - e "Matr" per MEDICI; chiave esterna in REPARTI(Primario). Nella tabella RICOVERI chiave primaria può essere quella composta dai campi Paziente, Inizio e Reparto
"Base dati Ospedale" Attributi nulli e vincoli referenziali Gli attributi che possiamo ammettere nulli sono tutti quelli che non siano chiavi primarie – se ad esempio non disponessimo del cognome di un paziente, comunque sarebbe sufficiente PAZIENTI(COD) per identificarlo unificamente. ATTRIBUTI NULLI Per cui ATTRIBUTI NULLI: REPARTI(Nome) PAZIENTI(Cognome, Nome) MEDICI(Nome,Cognome)