Modello Entità-Relazione e Database Schema E-R: permette la descrizione dello schema concettuale di una situazione reale senza preoccuparsi dell’efficienza o della progettazione del database fisico. Tale schema è rappresentato mediante un diagramma E-R. Database: insieme di tabelle che sono collegate o correlate. Tabella: insieme di record. Record: insieme di campi. Campo: valore attributo ad una entità. Entità: oggetto del mondo reale o immaginario che si distingue da altri oggetti, è difficile da descrivere a parole ma operativamente si comprende. Entity-set: insieme delle entità dello stesso tipo, tali insieme possono essere disgiunti come no. Attributo: proprietà dell'identità. 4 categorie di attributi -Semplici: un solo valore. -Multipli: permettono di inserire più valori. -Composti: possono essere scomposti in più attributi. -Opzionali: non è obbligatorio avere un valore. Dominio di un attributo: rappresenta l'insieme dei valori che può assumere un attributo. Relazione: associazione tra una o più entità. Grado di una relazione: numero delle entità che sono in relazione. Relazione ricorsiva: esecuzione di se stesso in se stesso. Nell’ambito di access indica che un’entità è in relazione con se stessa (ne è un esempio una società SPA dove l’entità impiegato è in relazione con un altro impiegato, ovvero con l’entità spessa). Al suo interno si creeranno delle subordinazioni. Query: interrogazione che si effettua sul database (es. trovare tutti i titoli dei libri [Query di selezione: si selezionano record o campi]). Chiave: serve a distinguere le entità e le relazioni. Superchiave: un insieme di attributi che consentono di identificare univocamente un'entità all'interno di un entity-set (una superchiave è formata da un numero variabile di attributi che identificano in maniera chiara e diretta un'entità all'interno dell'entity-set). La superchiave può essere ridondante cioè può essere ripetuta. Chiave candidata: si definisce chiave candidata quella superchiave che è formata dal numero minimo di attributi (non può essere ridondante). Chiave primaria: è la chiava candidata scelta dal progettista del DB per identificare le entità all'interno dell'entity-set. Chiave di una relazione: la chiave della relazione è formata dalle chiavi primarie delle entità messe in relazione più gli attributi della relazione stessa. Se la relazione è di tipo molti a molti (N:M) tale superchiave è chiave primaria della relazione stessa. Vincoli di integrità: è una regola che si esprime sullo schema ma deve valere per ogni istanza dello schema: - Cardinalità sulle relazioni: è una coppia min - max di valori dove min rappresenta il limite minimo e max rappresenta il limite massimo di entità che sono in relazione con altre entità. Ne esistono di più tipi: -- Uno ad Uno (1:1) (persona - codice fiscale) -- Uno a Molti (1:N) (studente - classe) -- Molti a Molti (M:N) (libro - autore) - Cardinalità sugli attributi: ulteriori informazioni per la classificazione degli attributi: -- Opzionali: la cardinalità minima è 0 (es. n° patente) -- Monovalore: la cardinalità massima è 1 (es. codice fiscale) -- Multivalore: la cardinalità massima è n (es. n° di telefono) - Vincoli di partecipazione o cardinalità minima: specifica se l'esistenza di un'entità dipende dall'essere correlata ad un'altra entità mediante una relazione (esiste se e solo se esiste una relazione fra le due entità; es pag 46)