PROGETTAZIONE DI UN DATA BASE PERAGINE MARIANTONELLA MATRICOLA
Analisi dei requisiti Si vuole automatizzare la gestione dei libri prestati dal nostro soggetto agli amici Bisognerà memorizzare i dati relativi a: AMICO LIBRO
Schema entita’ - relazioni N : N AMICO LIBRO PRESTITO 1 : N N : 1
PROGETTAZIONE CONCETTUALE AMICO: ATTRIBUTI Id amico : codice univoco nome : insieme di tutti i nomi degli amici
PROGETTAZIONE CONCETTUALE LIBRO: ATTRIBUTI Id libro: codice univoco Titolo Autore
PROGETTAZIONE LOGICA DEFINIZIONE DELLE RELAZIONI AMICO LIBRO 1 : N 1 : N N : 1 N : 1 N : N N : N PRESTITO PRESTITO
Progettazione logica Dalla relazione N:N deriva un ulteriore entità PRESTITO con i relativi attributi: ID PRESTITO: codice univoco Campo link alla tabella AMICO Campo link alla tabella LIBRO Data inizio prestito Data fine prestito
PROGETTAZIONE LOGICA DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI TABELLA AMICO NOME CAMPO TIPO CAMPODIMENSIONE VINCOLINOTE ID AMICO NUMERICO Intero lungo Primary key NOME TESTO 40Unique
Segue….. TABELLA LIBRO NOME CAMPO TIPO CAMPO DIMENSIONE VINCOLINOTE ID LibroNumericoIntero lungoPrimary Key TitoloTesto30Not null AutoreTesto25Not null
Segue….. TABELLA PRESTITO NOME CAMPO TIPO CAMPO DIMESIONEVINCOLINOTE ID PrestitoNumericoIntero lungoPrimary Key FK Amico Prestito NumericoIntero lungoForeign KeyLink alla tabella Amico FK Libro Prestito NumericoIntero lungoForeign KeyLink alla tabella Libro Data inizioDataNot null Data fineDataNot null
SCHEMA LOGICO 1 LIBRO ID Libro Titolo Autore FK Utente AMICO ID Utente Nome LIBRO ID Libro Titolo Autore FK Amico PRESTITO ID Prestito FK Amico FK Libro Data Inizio Data Fine
Base dati ospedale Individuazione chiavi: -Tabella “Pazienti” e tabella “Reparti” Primary Key è COD. -Tabella “Medici” Primary Key è MATR. Vincoli di integrità referenziale: -fra l’attributo “Codice” della relazione PAZIENTI e la relazione RICOVERI; -fra l’attributo “Reparto” della relazione RICOVERI e la relazione MEDICI. Valori nulli: B372 e B543 sono nulli perché il paziente non è presente nella tabella RICOVERI.
Valori nulli Un valore null in un database relazionale viene utilizzato quando il valore in una colonna è sconosciuto o è mancante. I valori Null indicano dati che non sono conosciuti, non applicabili o che verranno aggiunti in seguito. È possibile, ad esempio, che l'iniziale del secondo nome di un cliente non sia nota nel momento in cui il cliente emette un ordine. Spesso i valori mancanti sono il risultato di errori umani. I valori sconosciuti possono comparire in una tabella per vari motivi; una ragione può essere che il valore di cui si ha bisogno in una certa colonna non è ancora stato definito. L’utilizzo di Null in una tabella dipende dal modo in cui si usano i dati.
……segue: svantaggi Il più grande inconveniente dei NULL è l'effetto negativo che hanno sulle operazioni matematiche. Tutte le operazioni che contengono un Null hanno come risultato ancora un Null. Se è probabile che i dati includano valori Null indesiderati, è consigliabile creare query e istruzioni per la modifica dei dati che consentano di rimuovere tali valori o trasformarli. Per ridurre al minimo le operazioni di manutenzione e i possibili effetti sulle query o sui report esistenti, è consigliabile utilizzare i valori Null il meno possibile. Pianificare le query e le istruzioni per la modifica dei dati in modo che l'effetto dei valori Null sia minimo.