DB - Modello relazionale dei dati

Slides:



Advertisements
Presentazioni simili
Informatica II – Basi di Dati (08/09) – Parte 1
Advertisements

Corso di Laurea in Biotecnologie Informatica (Basi di Dati)
DB -Algebra Relazionale
Il raffinamento dello schema e la normalizzazione nei database relazionali Eugenio Di Sciascio.
Algebra Relazionale 3 Università degli Studi del Sannio
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Vincoli sulle basi di dati
Basi di dati: il modello relazionale
DOCUMENTAZIONE DI SCHEMI E/R
1 Progettazione logica: Il modello relazionale Eugenio Di Sciascio.
Basi di Dati prof. A. Longheu
4 – Progettazione – Introduzione e Modello E-R
Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.
Il modello relazionale: strutture e vincoli
ESEMPI DI ARCHIVI DI DATI
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
ENTITÀ - RELAZIONE MODELLO ENTITÀ E ATTRIBUTI DOMINI RELAZIONI
Corso di Informatica (Basi di Dati)
Corso di Informatica (Basi di Dati)
Corso di Informatica (Basi di Dati)
1 Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Relazionale Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi.
Basi di dati. Vantaggi degli archivi digitali Risparmio di spazio: sono facilmente trasferibili e duplicabili Risparmio di tempo: si può accedere ai dati.
SQL: Lezione 7 Nataliya Rassadko
DB -Algebra Relazionale
SQL Per la modifica di basi di dati
Appunti informatica- prof. Orlando De Pietro
Equivalenza di espressioni
Modello Relazionale Definisce tipi attraverso il costruttore relazione, che organizza i dati secondo record a struttura fissa, rappresentabili attraverso.
Modello E-R Generalizzazioni
Progettazione di una base di dati
Relazioni Relazione : concetto mutuato dalla definizione di relazione matematica della teoria degli insiemi, come sottoinsieme del prodotto cartesiano.
Normalizzazione Le forme normali certificano che la base di dati soddisfa criteri di qualità che mirano ad evitare le ridondanze e i conseguenti effetti.
Modello E-R Generalizzazioni
Modello Relazionale Proposto agli inizi degli anni ‘70 da Codd
Informazione incompleta Le tuple che compongono la base di dati devono essere omogenee. Quindi ad ogni attributo deve essere associato un valore in ogni.
Basi di dati Claudia Raibulet
Modelli dei dati Modelli e database
Il Modello Relazionale
Il modello ER Proposto da Peter Chen nel 1976 rappresenta uno standard per la progettazione concettuale (in particolare per le basi di dati) Ha una rappresentazione.
MODELLO LOGICO DEI DATI
Progettare un database
Sistemi di Elaborazione delle Informazioni Mod.I.
1 Il Linguaggio SQL Il Linguaggio SQL Prof. Lorenzo Vita, Ing. Luigi Testa.
SQL.
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
DB- Sistemi Informativi
Il modello relazionale (II). Informazione incompleta e valori nulli In una tupla di una relazione un attributo può non avere valore Per esempio: Mario.
Informatica II – Basi di Dati (07/08) – Parte 2 Gianluca Torta Dipartimento di Informatica dell’Università di Torino
Informatica Introduzione alle basi di dati Lezione 4 Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:
Il modello relazionale. Modello logico dei dati basato su concetti relazione e tabella Relazione: da teoria degli insiemi Tabella: rappresentazione grafica.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999
IL MODELLO RELAZIONALE. Modello Relazionale2 Cronologia dei modelli per la rappresentazione dei dati  Modello gerarchico (anni 60)  Modello reticolare.
1 Il modello relazionale. 2 Introduzione Il modello relazionale, sebbene non sia stato il modello usato nei primi DBMS, e' divenuto lentamente il modello.
Progettazione di una base di dati Ciclo di vita di un sistema informativo Studio di fattibilità definisce le varie alternative possibili, i relativi costi.
Basi di dati e Relazioni Uno schema di relazione R(X) è costituito da un simbolo (nome della relazione) R e da una serie di attributi X={A 1, A 2, …, A.
Query languages per Basi di Dati Relazionali  Algebra Relazionale:  basato sulla teoria degli insiemi  procedurale  usato per l’implementazione di.
Progettazione di una base di dati relazionale Vincoli.
Progettazione di una base di dati relazionale Terza forma normale.
S. Costantini 06/05/2006 (parte del materiale è tratto da slide del 2001 di Ceri-Atzeni) Normalizzazione di Schemi.
1 Esami Esame scritto: Tra 21 e 25 domande: 20 domande chiuse (20 punti),  5 domande aperte (10 punti) 1½ ore Esame orale/applicativo: Esercizi usando.
Il modello relazionale
Eprogram informatica V anno.
Cloud informatica V anno.
NORMALIZZAZIONE ESERCIZI. INTRODUZIONE La modellazione E-R ci ha consentito di descrivere schemi relazionali Lo strumento base per la modellizzazione.
DB- Sistemi Informativi Insieme di programmi in grado di acquisire, elaborare, trasmettere ed archiviare informazioni in genere ad uso di un’organizzazione.
Linguaggi per basi di dati Linguaggi di definizione dei dati Utilizzati per definire gli schemi e le autorizzazioni per l’accesso Linguaggi di manipolazione.
Il Modello Relazionale. I modelli logici dei dati Tradizionalmente, esistono tre modelli logici: –gerarchico –reticolare –relazionale I modelli gerarchico.
Il modello relazionale. Modello Relazionale 2 Dal modello concettuale a quello logico Una volta stabilita la rappresentazione concettuale della realtà.
BASI DATI: modello relazionale BIOINGEGNERIA ELETTRONICA ED INFORMATICA Lezione IIIb - AA 2014/20151.
Transcript della presentazione:

DB - Modello relazionale dei dati

DB - Modello Relazionale Definizione Un modello dei dati è un insieme di meccanismi di astrazione per definire una base di dati, con associato un insieme predefinito di operatori e di vincoli di integrità. Questi meccanismi di astrazione costituiscono l’equivalente delle strutture dati nella programmazione. DB - Modello Relazionale

DB - Modello Relazionale Modelli di dati Alcuni modelli: Gerarchico Reticolare Relazionale I modelli reticolare e gerarchico rispecchiano (in qualche modo) l’architettura fisica dei dati Il relazionale e’ basato solo sul valore dei dati Recentemente: modello a oggetti DB - Modello Relazionale

Caratteristiche di un buon modello Espressività: permette di rappresentare in modo semplice e naturale i dati e le loro proprietà. Semplicità: basato su un numero minimo di meccanismi semplici da utilizzare e capire. Realizzabilità: deve essere realizzabile in modo efficiente su di un calcolatore. DB - Modello Relazionale

Il modello relazionale dei dati Introdotto da Codd nel 1970 Implementa bene il concetto di indipendenza dei dati Oggi e’ di gran lunga il modello dei dati più diffuso Implementato nei DBMS commerciali dal 1981 E’ basato sul concetto matematico di RELAZIONE DB - Modello Relazionale

DB - Modello Relazionale Relazioni Una Relazione n-aria è un sottoinsieme del prodotto cartesiano D1 X D2 X ... Dn di insiemi di valori di tipo elementare detti domini. Ogni elemento < d1, d2, …, dn> si chiama n-upla (o tupla) DB - Modello Relazionale

DB - Modello Relazionale Schema di relazione Uno schema di relazione R : {T} e’ una coppia formata dal nome di una relazione R e da un tipo relazione T DB - Modello Relazionale

Definizione Tipo Relazione Interi,Reali,Booleani,Stringhe sono tipi primitivi; se T1, T2, …, Tn sono tipi primitivi e A1, A2, …, An sono etichette, dette attributi, allora (A1 :T1 , A2 :T2 , …, An :Tn) e’ un tipo n-upla di grado n (l’ordine non è significativo). se T è un tipo n-upla allora {T} e’ un tipo relazione (tipo insieme di n-uple) DB - Modello Relazionale

DB - Modello Relazionale Schemi Relazionali Uno Schema Relazionale è costituito da un insieme di schemi di relazione Ri : {Ti}, i=1, 2,…, k e da un insieme di vincoli di integrità relativi a tali schemi. Costituisce l’aspetto intensionale del dato modello relazionale dei dati. DB - Modello Relazionale

DB - Modello Relazionale Aspetto estensionale Una n-upla t=(A1:= v1, A2:= v2,…, An:= vn) di tipo (A1 :T1 , A2 :T2 , …, An :Tn) è un insieme di coppie (Ai , vi) con vi di tipo Ti. Una Relazione R di tipo {(A1 :T1 , A2 :T2 , …, An :Tn)} è un insieme finito di n-uple di tipo (A1 :T1 , A2 :T2 , …, An :Tn). La cardinalita’ di una relazione e’ il numero di n-uple DB - Modello Relazionale

DB - Modello Relazionale Esempio di relazione E’ una relazione di tipo {(Nome : char , Matricola : int ,Indirizzo : char , Telefono :int )} e ciascuna riga è una n-upla della relazione. DB - Modello Relazionale

Esempio di schema relazionale { Studenti : { (Nome : char , Matricola : int(6) ,Indirizzo : char , Telefono :int(6) ) } Esami : { (Corso : char , Matricola : int(6) ,Voto: {18,19,…,30} } Corsi : { (Corso:char, Professore:char) } } Che si abbrevia (se non interessa riportare il tipo degli attributi) in: Studenti( Nome, Matricola, Indirizzo, Telefono); Esami( Corso, Matricola,Voto); Corsi( Corso, Professore); DB - Modello Relazionale

Dominio di un attributo dom(Ai) e’ l’insieme dei possibili valori dell’attributo Ai ad esempio nella tabella Studenti(Corso,Matricola,Voto) , dom(Voto) = {18,19,…,30} DB - Modello Relazionale

DB - Modello Relazionale Vincoli di integrità I vincoli di integrita’ servono a migliorare la qualita’ delle informazioni contenute nella base di dati Un vincolo e’ un predicato che dev’essere soddisfatto da ogni n-upla nella base di dati Un’istanza valida di uno schema di relazione è una relazione dello schema che soddisfa tutti i vincoli di integrità. DB - Modello Relazionale

Esempio di vincoli d’integrita’ Il voto dev’essere compreso tra 18 e 30 La lode puo’ apparire solo se voto=30 Ogni studente deve avere un numero di matricola Il numero di matricola di uno studente dev’essere univoco Esami dati devono fare riferimento solo a corsi offerti DB - Modello Relazionale

DB - Modello Relazionale Vincoli d’integrita’ I tre tipi piu’ importanti specificano: Quali attributi non possono assumere il valore NULL Quali attributi sono chiave Quali attributi sono chiavi esterne DB - Modello Relazionale

Mancanza di informazione Il modello relazionale impone una struttura rigida ai dati, in quanto: L’informazione viene rappresentata per mezzo di n-uple Le n-uple hanno uno schema ben definito Come rappresentare quindi, ad esempio, il fatto che di uno studente non si conosce il numero di cellulare? Usanza comune: Usare valori non utilizzati (es. 0 per eta’ studente) Problemi: Possono non esserci valori inutilizzati Il valore inutilizzato puo’ diventare utile In alcuni casi bisogna ricordarsi di distinguere i valori reali dei “riempiposto”, esempio: media dell’eta’ degli studenti (se rappresentiamo il fatto di non conoscere l’eta’ dello studente con 0) DB - Modello Relazionale

DB - Modello Relazionale Valori nulli (NULL) Il modello relazionale include il “NULL value” come tecnica per modellare la mancanza di informazione NULL non fa parte del dominio dell’attributo Quando si da ad un attributo la possibilità di avere valore null, si ammette che quell’attributo in qualche n-upla può rimanere non specificato e/o venire assegnato in un secondo momento Il valore NULL per un certo attributo puo’ indicare: Il valore non c’e’; Il valore c’e’ ma non lo si conosce al momento; Non si sa se il valore c’e’; I DBMS non modellano il perche’ manca il dato, si limitano a denotarne la sua mancanza DB - Modello Relazionale

Esempio di valori nulli DB - Modello Relazionale

DB - Modello Relazionale Chiavi Superchiave X di uno schema di relazione è un insieme di attributi dello schema tale che in ogni istanza dello schema se due n-uple coincidono su X allora sono uguali. Chiave è una superchiave minimale rispetto alla relazione . Chiave Primaria è una delle chiavi scelta per un dato schema. DB - Modello Relazionale

DB - Modello Relazionale Esempi di chiavi {Nome,Matricola} è una superchiave ma non è una chiave, infatti {Matricola} è una chiave e si sceglie anche come primaria per accedere ai vari record {Indirizzo} non è superchiave DB - Modello Relazionale

DB - Modello Relazionale Chiavi esterne Un insieme di attributi {A1, A2 , …, An} di uno schema di relazione R è una chiave esterna che riferisce una chiave primaria {B1, B2 , …, Bn} di un altro schema S se in ogni istanza valida della base di dati, per ogni n-upla r dell’istanza di R esiste una n-upla s (riferita da r) dell’istanza di S tale che r.Ai = s.Bi... DB - Modello Relazionale

Esempio chiave esterna Esami Una chiave esterna associa a certe n-uple della relazione r (quelle aventi la stessa chiave esterna) una ben determinata n-upla della relazione s a cui si riferisce determinata dai valori della chiave primaria(cioè della chiave esterna) Cosi’ {Matricola} per Esami e’ chiave esterna che si riferisce a Studenti Studenti DB - Modello Relazionale