MODELLO ER

  • View
    425

  • Download
    0

Embed Size (px)

Transcript

  • 1. IL MODELLO E-R

2. COS IL MODELLO E-R? Il Modello Entit-Relazioni un modello per la rappresentazione concettuale deidati sotto forma di entit e di relazioni tra di esse. 3. LE ENTIT In un Modello E-R, le entit sono gli oggetti principali su cui vengono raccolte le informazioni. Ogni entit del Modello E-R serve a rappresentare graficamente un concetto del mondo reale.StudenteClasseDocente 4. ENTIT FORTI ed ENTIT DEBOLI Unentit si dice: Forte se non ha bisogno di altre entit per essere identificata; Debole se richiede altre entit per essere identificata. ESEMPIOPrendiamo in considerazione due entit, il Libro e il Titolo. Il Libro unentit forte, poich esiste indipendentemente dal Titolo, che unentit debole in quanto la sua esistenza giustificata solo dallesistenza di un libro. 5. ENTIT ASSOCIATIVE Le entit associative (o di intersezione) sono entit usate per associare due o pi entit allo scopo di risolvere unassociazione multipla. ESEMPIO Prendiamo in considerazione due entit, il Docente e la Classe. Un Docente insegna in diverse classi e una Classe ha diversi docenti ( Relazione N-N). quindi necessario introdurre unentit associativa, per esempio lOrario, che associa il Docente alla Classe 6. ISTANZA Listanza di unentit consiste in un singolo oggetto descritto dallentit.ESEMPIO Prendiamo in considerazione lentit Studenti. Lentit Studenti sar linsieme di tutti gli studenti di una classe, mentre ogni singolo studente rappresenta unistanza dellentit. 7. ATTRIBUTI Gli attributi descrivono le entit con le quali sono associati.Studente Nome CognomeClasseDocenteSezione IndirizzoMateria Cognome 8. CARATTERISTICHE degli ATTRIBUTI Per ogni attributo si devono individuare sempre tre caratteristiche fondamentali, che sono: Il formato, che indica il tipo di valori che assume. I tre formati base sono carattere, numerico, data/ora; La dimensione, cio la quantit massima di caratteri o cifre inseribili; Lopzionalit, che indica la possibilit di non essere sempre valorizzato. 9. OPZIONALIT di un ATTRIBUTO Lattributo pu essere: Obbligatorio, se deve necessariamente avere un valore non nullo; Facoltativo, se sono accettabili valori nulli. Il valore nullo rappresenta uninformazione mancante, inapplicabile o sconosciuta. 10. VALORE di un ATTRIBUTO e DOMINIO di un ATTRIBUTO Il valore una particolare istanza di un attributo. Per esempio, dato un attributo Data, un suo valore pu essere il 18/07/1996 Il dominio di un attributo la collezione di tutti i possibili valori che un attributo pu avere. Per esempio, dato un attributo Data, il suo dominio sono tutti i giorni dalla notte dei tempi alla fine del mondo. 11. IDENTIFICATORI e DESCRITTORI Gli attributi possono essere classificati come: Identificatori, chiamati anche chiavi, identificano in modo univoco unistanza di unentit; Descrittori, che descrivono una caratteristica non unica di unistanza di un entit. 12. LE RELAZIONI Una relazione rappresenta unassociazione tra due o pi entit. Ogni associazione ha due versi. Ogni verso ha: Unentit di partenza; Unentit di arrivo; Una descrizione per comprendere il significato dellassociazione. Studente Nome CognomeClasse Frequenta frequentataSezione Indirizzo 13. CLASSIFICAZIONE delle RELAZIONI Le relazioni sono classificate secondo: Il grado; La cardinalit; La direzione; Lesistenza. 14. IL GRADO Il grado di una relazione il numero di entit associate alla relazione. La relazione n-aria la forma generale di grado n. Le relazioni binarie (Grado 2) sono le relazioni pi comuni nel mondo reale; Una relazione binaria ricorsiva si ha quando una relazione associata a se stessa; Una relazione n-aria in genere decomposta in pi relazioni binarie. 15. LA CARDINALIT La cardinalit di una relazione descrive la mappa delle istanze delle entit associate nelle relazioni. Il valore della cardinalit Uno (1) o Molti (N). Le cardinalit possono essere: Uno a uno (1-1) Uno a molti (1-N) Molti a molti (N-N) 16. DIREZIONE La direzione di una relazione indica lentit da cui trae origine la relazione binaria. Lentit da cui si parte si chiama entit padre, lentit a cui si arriva si chiama entit figlio. La direzione della relazione determinata dalla sua cardinalit: Nelle relazioni 1-1 la direzione va dallentit forte a quella debole. Se sono entrambe forti la direzione arbitraria; Nelle relazioni 1-N lentit padre lentit con cardinalit 1; Nelle relazioni N-N la direzione arbitraria. 17. LESISTENZA Lesistenza denota se lesistenza di unistanza di entit dipendente dallistanza di unaltra entit correlata. Lesistenza di unentit in una relazione viene definita: Obbligatoria se, date due entit A e B, A deve per forza esserci perch B sia incluso nella relazione. Per esempio, un voto deve essere attribuito a uno studente; Opzionale se, date due entit A e B, non necessario che ci sia B perch esista A. Per esempio, uno studente esiste anche se non ha nessun voto. 18. CHIAVI E ATTRIBUTILa teoria relazionale si fonda su due componenti di base: Le chiavi primarie, cio quelle che identificano in modo univoco le istanze delle entit; Le chiavi esterne, che completano lassociazione tra due entit. 19. LE CHIAVI PRIMARIE La chiave primaria un attributo o una serie di attributi che identifica univocamente una specifica istanza di unentit. Perch un attributo possa essere definito chiave primaria deve avere le seguenti propriet: Deve poter essere specificato il suo valore per ogni istanza dellentit; Il valore deve essere unico per ogni istanza dellentit; Il valore non pu cambiare o diventare nullo durante la vita di ogni istanza dellentit. 20. CHIAVI CANDIDATE e CHIAVI ALTERNATIVE In alcuni casi unentit pu avere pi di un attributo adatto a diventare chiave primaria. Ognuno di questi attributi viene chiamato chiave candidata. Ciascuna chiave candidata che non , poi, scelta come chiave primaria prender il nome di chiave alternativa. 21. CHIAVI COMPOSTE Pu capitare che, per identificare univocamente unentit, serva una chiave primaria composta da pi attributi. Questo tipo di chiave prende il nome di chiave composta. 22. CHIAVI ARTIFICIALI La chiave artificiale formata da un attributo privo di significato proprio, che viene aggiunto in modo strumentale se, tra gli altri attributi, nessuno riesce a identificare in modo univoco lentit. A questa chiave, in genere, viene dato un nome formato da ID + il nome dellentit, ed composta da un contatore che si incrementa automaticamente a ogni istanza aggiunta allentit. 23. CHIAVI ESTERNE Una chiave esterna un vincolo per creare una relazione tra due entit. In una relazione binaria, quella chiave che nella sua specifica entit chiamata chiave primaria, diventer la chiave esterna dellaltra entit. ESEMPIO Prendiamo in considerazione due entit, la Persona e il Lavoro. Lentit Persona avr al suo interno diversi attributi tra cui la chiave primaria IDPersona, cos come lentit Lavoro avr al suo interno diversi attributi tra cui la chiave primaria IDLavoro. Se spostiamo IDLavoro nellentit Persona, IDLavoro diventer chiave secondaria dellentit Persona. 24. DALLENTIT alla TABELLA Ogni entit pu essere riportata in una tabella.Tabella Persona ID NOME PERSONACOGNOMEDATA di NASCITALUOGO DI NASCITA1MarcoSandri25/10/1986Treviso2LuciaFerro14/04/1970Milano3AndreaRuso03/08/1990Roma 25. LE CHIAVI ESTERNE NELLE TABELLE A seconda della cardinalit delle relazioni si verificano diversi eventi: 1-N: metto la chiave primaria dellentit 1 nella tabella dellentit n. La chiave prender il nome di chiave esterna della tabella-entitN; 1-1: unisco le due tabelle; 2-N: la tabella-entitN avr 2 chiavi esterne; N-N: aggiungo una tabella ponte. 26. LE TABELLE PONTE La tabella ponte una tabella che permette di rappresentare una relazione di tipo N-N. Viene aggiunta tra le due tabelle e contiene le chiavi primarie delle due tabelle ed eventuali attributi contenuti nella relazione che le lega. Tabella PersonaTabella LavoroID PERSNOMECOGNOMEID PERSID LAVID LAVDATOREAZIENDA1MatteoMenegozzo111LorenziTrashSoundTABELLA PONTE 27. LE REGOLE DI INTEGRIT INTEGRIT Lintegrit dei dati una delle colonne portanti del modello relazionale, poich garantisce che i valori siano validi e consistenti. Lintegrit in un database relazionale la coerenza tra tabelle accoppiate. Le regole di integrit che devono sempre essere rispettate sono due: Integrit dellentit; Integrit referenziale. 28. INTEGRIT DELLENTIT INTEGRIT La regola dellintegrit dellentit dice che la chiave primaria di ogni istanza di unentit deve avere un valore esistente, unico e non nullo. Questa esigenza necessaria in quanto la chiave primaria di unentit usata per identificare una singola riga in modo univoco, e quindi il suo valore deve essere sempre specificato e non deve mai essere duplicato o vuoto. 29. INTEGRIT REFERENZIALE La regola dellintegrit dellreferenziale dice che per ogni valore della chiave esterna deve esistere un valore di chiave primaria nella tabella associata. Ogni valore della chiave esterna deve essere, perci, o null, oppure deve coincidere con la chiave primaria della tabella a cui fa riferimento. 30. REGOLE DI INSERZIONE, CANCELLAZIONE e MODIFICA Una chiave esterna crea una relazione gerarchica tra due entit associate. Lentit che contiene la chiave esterna si chiama figlio, lentit che contiene la chiave primaria da cui tratta quella esterna si chiama padre. Per mantenere lintegrit referenziale tra entit padre e entit figlio devono essere prese in considerazione alcune regole di inserzione, cancellazione o modifica. 31. REGOLE DI INSERZIONE Inserimento dipendente: consente linserzione nellentit figlio solo se lentit padre esiste gi; Inserimento automatico: consente linserzione di unistanza nellentit figlio, e se listanza dellentit padre non esiste viene creata; Inserzione nulla: consente linserzione di unentit figlio, e se listanza dellentit padre non esiste la chiave esterna viene mes