Parte III. L algebra relazionale

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Parte III. L algebra relazionale"

Transcript

1 Parte III L algebra relazionale asi di dati - prof. Silvio Salza - a.a III - 1 Linguaggi di interrogazione Dichiarativi: specificano le proprietà del risultato ("che cosa") Procedurali: specificano le modalità di generazione del risultato ("come") Rappresentanti più significativi: Algebra relazionale: procedurale (usata dai DMS) Calcolo relazionale: dichiarativo (teorico) SQL (Structured Query Language): parzialmente dichiarativo (reale) QE (Query by Example): dichiarativo (reale) asi di dati - prof. Silvio Salza - a.a III - 2

2 Algebra relazionale Costituita da un insieme di operatori definiti su relazioni producono relazioni possono essere composti Operatori dell algebra relazionale: Unione, Intersezione, Differenza (operatori insiemistici) Ridenominazione Selezione Proiezione Join (join naturale, prodotto cartesiano, theta-join) asi di dati - prof. Silvio Salza - a.a III - 3 Operatori insiemistici Le relazioni sono insiemi (di tuple), quindi ad esse possono essere applicati, in linea di principio, gli operatori insiemistici Esistono comunque delle limitazioni: Il risultato deve essere anch esso una relazione Una relazione non è un insieme qualsiasi Possibile applicare Unione, Intersezione, Differenza solo a relazioni definite sugli stessi attributi asi di dati - prof. Silvio Salza - a.a III - 4

3 Unione Laureati Quadri Nome Età Nome Età 7274 Rossi Verdi Verdi Laureati Quadri Nome Età 7274 Rossi Verdi asi di dati - prof. Silvio Salza - a.a III - 5 Intersezione Laureati 7274 Nome Rossi Età Verdi Quadri 9297 Nome Età Verdi Laureati Quadri Nome Età Verdi 45 asi di dati - prof. Silvio Salza - a.a III - 6

4 Differenza Laureati Quadri Nome Età Nome Età 7274 Rossi Verdi Verdi 45 Laureati Quadri Nome Età 7274 Rossi 42 asi di dati - prof. Silvio Salza - a.a III - 7 Un unione sensata ma impossibile Paternità Maternità Padre Figlio Madre Figlio Abele Eva Abele Caino Eva Set Abramo Isacco Sara Isacco Paternità Maternità?? asi di dati - prof. Silvio Salza - a.a III - 8

5 Ridenominazione Paternità Padre Abramo Figlio Abele Caino Isacco Ascendenza-P Genitore Padre Figlio Abele Caino Abramo Isacco Ascendenza-P = REN Genitore Padre (Paternità) L operatore REN consente la ridenominazione degli attributi, per rendere possibili successive operazioni asi di dati - prof. Silvio Salza - a.a III - 9 Passo 1: ridenominazione Paternità Padre Abramo Figlio Abele Caino Isacco Ascendenza-P Genitore Abramo Figlio Abele Caino Isacco Maternità Madre Eva Eva Sara Figlio Abele Set Isacco Ascendenza-M Genitore Figlio Eva Abele Eva Set Sara Isacco Ascendenza-P = REN Genitore Padre (Paternità) Ascendenza-M = REN Genitore Madre (Maternità) asi di dati - prof. Silvio Salza - a.a III - 10

6 Passo 2: unione Ascendenza-P Genitore Figlio Abele Caino Abramo Isacco Ascendenza-M Genitore Figlio Eva Abele Eva Set Sara Isacco Ascendenza Genitore Abramo Eva Eva Sara Figlio Abele Caino Isacco Abele Set Isacco Ascendenza = Ascendenza-P Ascendenza-M asi di dati - prof. Silvio Salza - a.a III - 11 Selezione Operatore monadico Produce come risultato una relazione che Ha lo stesso schema dell'operando Contiene un sottoinsieme delle n-uple dell'operando Sono conservate solo le tuple che soddisfano una data condizione Permette di valutare tutte le interrogazioni che implicano condizioni fra attributi della stessa tupla asi di dati - prof. Silvio Salza - a.a III - 12

7 Selezione: esempi Cognome Filiale Stipendio Rossi Roma 55 Milano 64 Milano Milano 44 Napoli 64 Trovare: 1. Gli impiegati che guadagnano più di Gli impiegati che guadagnano più di 50 e lavorano a Milano 3. Gli impiegati che hanno lo stesso nome della filiale presso cui lavorano asi di dati - prof. Silvio Salza - a.a III - 13 Selezione: sintassi e semantica Sintassi SEL Condizione (Operando) Operando: una qualsiasi relazione Condizione: espressione booleana definita sugli attributi dell operando (come quelle dei vincoli di tupla) Semantica il risultato contiene le n-uple dell'operando che soddisfano la condizione asi di dati - prof. Silvio Salza - a.a III - 14

8 Selezione: esempio 1 Gli impiegati che guadagnano più di 50 Imp-50 Imp-50 = SEL Stipendio > 50 () Cognome Filiale Stipendio 7309 Rossi Roma Milano Milano Milano Napoli Napoli 64 asi di dati - prof. Silvio Salza - a.a III - 15 Selezione: esempio 2 Gli impiegati che guadagnano più di 50 e lavorano a Milano Imp-50-M= SEL (Stipendio > 50) AND (Filiale= Milano ) () Imp-50-M Cognome Filiale Stipendio Rossi Roma Milano Milano Milano Milano Napoli 64 asi di dati - prof. Silvio Salza - a.a III - 16

9 Selezione: esempio 3 Gli impiegati che hanno lo stesso nome della filiale presso cui lavorano Imp-NF = SEL Cognome=Filiale () Imp-NF Cognome Filiale Stipendio Milano Rossi Milano Roma Milano 64 Milano Milano 44 Napoli 64 Napoli 64 asi di dati - prof. Silvio Salza - a.a III - 17 Selezione e proiezione Sono due operatori "ortogonali" Selezione: decomposizione orizzontale Proiezione: decomposizione verticale Selezione Proiezione asi di dati - prof. Silvio Salza - a.a III - 18

10 Proiezione: sintassi e semantica Sintassi PROJ ListaAttributi (Operando) Operando: una qualsiasi relazione ListaAttributi: un sottoinsieme degli attributi della relazione operando Semantica Il risultato contiene le ennuple ottenute da tutte le ennuple dell'operando ristrette agli attributi nella lista asi di dati - prof. Silvio Salza - a.a III - 19 Proiezione: esempio e Cognome di tutti gli impiegati -MC Cognome Filiale Stipendio Napoli 55 Milano 64 Rossi Roma 44 Rossi Roma 64 -MC = PROJ, Cognome () asi di dati - prof. Silvio Salza - a.a III - 20

11 Proiezione: esempio 2 Cognome e Filiale di tutti gli impiegati - CF Cognome Filiale Stipendio Napoli 55 Milano 64 Rossi Roma 44 Rossi Roma 64 -CF = PROJ Cognome, Filiale () asi di dati - prof. Silvio Salza - a.a III - 21 Cardinalità delle proiezioni Una proiezione contiene al più tante n-uple quante l'operando può contenerne di meno (vengono eliminati i duplicati) Se X è una superchiave di R, allora PROJ X (R) contiene esattamente tante ennuple quante R Se X è una superchiave di R, allora tutte le n-ple assumono valori diversi su X asi di dati - prof. Silvio Salza - a.a III - 22

12 Selezione e proiezione Combinando selezione e proiezione, possiamo estrarre interessanti informazioni da una relazione e cognome degli impiegati che guadagnano più di 50 Cognome Filiale Stipendio 7309 Rossi Roma Milano Milano Milano Napoli Napoli 64 PROJ,Cognome ( SEL Stipendio > 50 ()) asi di dati - prof. Silvio Salza - a.a III - 23 Join Combinando selezione e proiezione, possiamo estrarre informazioni da un unica relazione Non riusciamo però correlare informazioni presenti in relazioni diverse Il JOIN è l'operatore più interessante dell'algebra relazionale Permette di correlare dati in relazioni diverse Utilizza i collegamenti sui valori che sono alla base del modello relazionale asi di dati - prof. Silvio Salza - a.a III - 24

13 Join: esempio In un concorso pubblico i compiti sono anonimi e ad ognuno è associata una busta chiusa con il nome del candidato Ciascun compito e la relativa busta vengono contrassegnati con uno stesso numero 1 Mario Rossi 2 Nicola Russo 3 Mario ianchi 4 Remo Mario Rossi Nicola Russo Mario ianchi Remo asi di dati - prof. Silvio Salza - a.a III - 25 Join: esempio (continua) Votazione Numero Voto Candidati Numero Candidato 1 Mario Rossi 2 Nicola Russo 3 Mario ianchi 4 Remo Risultati Numero Candidato Mario Rossi Nicola Russo Mario ianchi Remo Voto asi di dati - prof. Silvio Salza - a.a III - 26

14 Join naturale Operatore binario (generalizzabile) Produce un risultato Definito sull'unione degli attributi degli operandi Con n-uple costruite ciascuna a partire da una n-upla di ognuno degli operandi Formalmente: Date due relazioni R 1 (X 1 ), R 2 (X 2 ) R 1 JOIN R 2 è una relazione su X 1 X 2 { t su X 1 X 2 t 1 R 1 e t 2 R 2, t[x 1 ]=t 1 e t[x 2 ] =t 2 } asi di dati - prof. Silvio Salza - a.a III - 27 Join completo Impiegato Rossi ianchi A Capi A Capo Mori runi -Capi Impiegato Capo Rossi A Mori runi ianchi runi In un join completo ogni tupla contribuisce al risultato asi di dati - prof. Silvio Salza - a.a III - 28

15 Join non completo Impiegato Rossi ianchi A Capi C Capo Mori runi -Capi Impiegato Capo Mori ianchi Mori Alcune tuple non contribuiscono al risultato asi di dati - prof. Silvio Salza - a.a III - 29 Join vuoto Impiegato Rossi ianchi A Capi D C Capo Mori runi -Capi Impiegato Capo Se i valori assunti dagli attributi di join non coincidono in nessuna coppia di tuple, il risultato è vuoto asi di dati - prof. Silvio Salza - a.a III - 30

16 Join completo con n x m n-ple Impiegato Rossi A Capi A Capo Mori runi -Capi Impiegato Capo Rossi Mori Rossi runi Mori runi Ciascuna coppia di tuple contribuisce: la cardinalità è massima asi di dati - prof. Silvio Salza - a.a III - 31 Cardinalità del join R 1 (A,), R 2 (,C) Il join di R 1 e R 2 contiene un numero di tuple compreso fra zero e il prodotto di R 1 e R 2 : 0 R 1 JOIN R 2 R 1 R 2 Se il join coinvolge una chiave di R 2, allora il numero di tuple è compreso fra zero e R 1 : 0 R 1 JOIN R 2 R 1 Se il join coinvolge una chiave di R 2 ed esiste un vincolo di integrità referenziale fra (in R 1 ) e R 2, allora il numero di ennuple è pari a R 1 : R 1 JOIN R 2 = R 1 asi di dati - prof. Silvio Salza - a.a III - 32

17 Join: tuple che non partecipano Capi Impiegato Capo Rossi A Mori C runi ianchi -Capi Impiegato Capo Mori ianchi Mori Alcune tuple non partecipano al risultato asi di dati - prof. Silvio Salza - a.a III - 33 Join esterno (outer join) Il join esterno estende, con valori nulli, le ennuple che verrebbero tagliate fuori da un join (interno) Esiste in tre versioni: sinistro: mantiene tutte le ennuple del primo operando, estendendole con valori nulli, se necessario destro:... del secondo operando... completo: di entrambi gli operandi... asi di dati - prof. Silvio Salza - a.a III - 34

18 Join esterno sinistro Capi Impiegato Capo Rossi A Mori C runi ianchi JOIN LEFT Capi Impiegato Capo Mori ianchi Mori Rossi A NULL asi di dati - prof. Silvio Salza - a.a III - 35 Join esterno destro Capi Impiegato Capo Rossi A Mori C runi ianchi JOIN RIGHT Capi Impiegato Capo Mori ianchi Mori NULL C runi asi di dati - prof. Silvio Salza - a.a III - 36

19 Join esterno completo Capi Impiegato Capo Rossi A Mori C runi ianchi JOIN FULL Capi Impiegato Capo Mori ianchi Mori Rossi A NULL NULL C runi asi di dati - prof. Silvio Salza - a.a III - 37 Prodotto cartesiano e theta-join È un join naturale su relazioni senza attributi in comune Contiene sempre un numero di ennuple pari al prodotto delle cardinalità degli operandi (tutte le ennuple sono combinabili) Ha senso (quasi) solo se seguito da selezione: SEL Condizione (R 1 JOIN R 2 ) L'operazione complessiva viene chiamata theta-join ed è indicata con: R 1 JOIN Condizione R 2 asi di dati - prof. Silvio Salza - a.a III - 38

20 Theta-join Impiegato Rossi ianchi A Capi Codice A Capo Mori runi JOIN =Codice Capi Impiegato Codice Capo Rossi A A Mori Rossi A runi ianchi A runi Mori runi ianchi A Mori ianchi runi asi di dati - prof. Silvio Salza - a.a III - 39 Esempio: database degli impiegati Nome Età Stipendio 7309 Rossi ianchi runi Mori Lupi Supervisione Impiegato Capo asi di dati - prof. Silvio Salza - a.a III - 40

21 Esempio 1 Query 1: Trovare matricola, nome, età e stipendio degli impiegati che guadagnano più di 40 milioni. SEL Stipendio>40 () Nome Età Stipendio Rossi ianchi runi Mori runi Lupi Mori Lupi asi di dati - prof. Silvio Salza - a.a III - 41 Esempio 2 Query 2: Trovare matricola, nome ed età degli impiegati che guadagnano più di 40 milioni PROJ, Nome, Età ( SEL Stipendio>40 ()) Nome Età Stipendio Rossi ianchi runi Mori runi Lupi Mori Lupi asi di dati - prof. Silvio Salza - a.a III - 42

22 Esempio 3 Query 2: Trovare le matricole dei capi degli impiegati che guadagnano più di 40 milioni Nome Età Stipendio Supervisione Impiegato Capo PASSO 1: PASSO 2: S 1 = SEL Stipendio>40 () S 2 = S 1 JOIN =Impiegato Supervisione PASSO 3: S 3 = PROJ Capo (S 2 ) asi di dati - prof. Silvio Salza - a.a III - 43 Esempio 4 Query 2: Trovare nomi e stipendi dei capi degli impiegati che guadagnano più di 40 milioni Nome Età Stipendio Supervisione Impiegato Capo PASSO 1: S 1 = SEL Stipendio>40 () PASSO 2: S 2 = S 1 JOIN =Impiegato Supervisione PASSO 3: S 3 = PROJ Capo (S 2 ) PASSO 4: S 4 = S 3 JOIN Capo= PASSO 5: S 5 = PROJ Nome, Stipendio (S 4 ) asi di dati - prof. Silvio Salza - a.a III - 44

23 Esempio 5 Query 2: Trovare le matricole dei capi i cui impiegati guadagnano tutti più di 40 milioni Nome Età Stipendio Supervisione Impiegato Capo PASSO 1: S 1 = SEL Stipendio 40 () PASSO 2: S 2 = S 1 JOIN =Impiegato Supervisione PASSO 3: S 3 = PROJ Capo (S 2 ) PASSO 4: PASSO 5: S 5 = S 4 -S 3 S 4 = PROJ Capo (Supervisione) asi di dati - prof. Silvio Salza - a.a III - 45 Equivalenza di espressioni Due espressioni dell algebra sono equivalenti se producono lo stesso risultato, qualunque sia l'istanza attuale della base di dati Gli utenti formulano le interrogazioni usando linguaggi dichiarativi (SQL) I DMS sonno dotati di un motore algebrico e valutano le interrogazioni calcolando un espressione algebrica L'equivalenza è importante perché i DMS possono scegliere tra tutte le espressioni equivalenti quella cui corrisponde il minore costo esecutivo asi di dati - prof. Silvio Salza - a.a III - 46

24 Un caso importante Conviene anticipare le selezioni (push selections) Le selezioni tipicamente riducono in modo significativo la dimensione del risultato intermedio (e quindi il costo dell'operazione). Esempio: se A è un attributo di R 1 1. S 1 = R 1 JOIN R 2 2. S 2 = SEL A=10 (S 1 ) 1. S 1 = SEL A=10 (R 1 ) 2. S 2 = S 1 JOIN R 2 Il piano esecutivo di destra è sicuramente meno costoso di quello di sinistra, perché il join viene effettuato tra R 2 e una relazione sicuramente più piccola di R 1 asi di dati - prof. Silvio Salza - a.a III - 47 Condizioni e valori nulli Cognome Filiale Età Rossi Roma 32 Milano 45 runi Milano NULL SEL Età > 40 () SEL Età 40 () Le condizioni atomiche sono vere solo per i valori non nulli L ultima tupla non viene presa in nessuna delle due selezioni asi di dati - prof. Silvio Salza - a.a III - 48

25 Gestione dei valori nulli Per riferirsi ai valori nulli esistono apposite condizioni atomiche: IS NULL e IS NOT NULL Cognome Filiale Età Rossi Milano Roma runi Milano NULL 45 runi Milano NULL SEL (Età > 40) OR (Età IS NULL) () asi di dati - prof. Silvio Salza - a.a III - 49

Linguaggi per basi di dati ALGEBRA RELAZIONALE. Linguaggi di interrogazione per basi di dati relazionali. Linguaggi di interrogazione

Linguaggi per basi di dati ALGEBRA RELAZIONALE. Linguaggi di interrogazione per basi di dati relazionali. Linguaggi di interrogazione Linguaggi per basi di dati Capitolo 3: LGER RELZIONLE operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation language interrogazione ("query") aggiornamento 1

Dettagli

Università di Roma La Sapienza Laurea in Ingegneria Informatica. Basi di Dati. Anno Accademico 2003/2004 Canale M-Z.

Università di Roma La Sapienza Laurea in Ingegneria Informatica. Basi di Dati. Anno Accademico 2003/2004 Canale M-Z. Università di Roma La Sapienza Laurea in Ingegneria Informatica Basi di Dati Anno Accademico 2003/2004 Canale M-Z Diego Calvanese Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 D1.2 Selezione e proiezione 1 Prerequisiti Elementi di teoria degli insiemi Composizione di operazioni 2 1 Introduzione Oltre alle operazioni insiemistiche, può capitare

Dettagli

Introduzione all algebra relazionale. Prof. Giovanni Giuffrida

Introduzione all algebra relazionale. Prof. Giovanni Giuffrida Introduzione all algebra relazionale Prof. Giovanni Giuffrida Esempio di interrogazione Studenti Nome Matricola Indirizzo Telefono Mario Rossi 456 Via Roma 1 095 111 Ugo Bianchi 567 Via Etnea 154 095 222

Dettagli

Basi di dati Maurizio Lenzerini Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza

Basi di dati Maurizio Lenzerini Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza Basi di dati Maurizio Lenzerini Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza Anno Accademico 2010/2011 http://www.dis.uniroma1.it/ lenzerini/?q=node/44 2. Il

Dettagli

Linguaggi per basi di dati

Linguaggi per basi di dati ALGEBRA RELAZIONALE Linguaggi per basi di dati operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation language interrogazione ("query") aggiornamento 2 Linguaggi

Dettagli

3 Algebra Relazionale

3 Algebra Relazionale Corso di Laurea in Ingegneria Gestionale Sapienza Università di Roma Corso di Basi di Dati A.A. 2016/2017 Tiziana Catarci Ultimo aggiornamento : 22/02/2017 I linguaggi di interrogazione e aggiornamento

Dettagli

Linguaggi per basi di dati. Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,

Linguaggi per basi di dati. Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Linguaggi per basi di dati tzeni, Ceri, Paraboschi, Torlone asi di dati McGraw-Hill, 1996-2002 Capitolo 3: LGER E CLCOLO RELZIONLE 07/06/2005 operazioni sullo schema DDL: data definition language operazioni

Dettagli

Tipi di operatori. Gli operatori dell algebra relazionale sono classificabili nelle seguenti categorie:

Tipi di operatori. Gli operatori dell algebra relazionale sono classificabili nelle seguenti categorie: lgebra relazionale Il linguaggio per interrogare ed aggiornare la base di dati fa parte del modello di questi ultimi. Un operazione di aggiornamento può essere vista come una funzione che, data un istanza

Dettagli

Structured Query Language

Structured Query Language IL LINGUAGGIO SQL Structured Query Language Contiene sia il DDL sia il DML, quindi consente di: Definire e creare il database Effettuare l inserimento, la cancellazione, l aggiornamento dei record di un

Dettagli

SQL. SQL: "storia. Sviluppato nella metà degli anni settanta (1974) presso il laboratorio di ricerca IBM di S.Josè. Dal 1983 ca. "standard di fatto"

SQL. SQL: storia. Sviluppato nella metà degli anni settanta (1974) presso il laboratorio di ricerca IBM di S.Josè. Dal 1983 ca. standard di fatto SQL SQL: "storia Sviluppato nella metà degli anni settanta (194) presso il laboratorio di ricerca IBM di S.Josè Dal 1983 ca. "standard di fatto" E il linguaggio di riferimento per l interrogazione di DBMS

Dettagli

Esercitazione 1 Algebra relazionale

Esercitazione 1 Algebra relazionale Esercitazione 1 Algebra relazionale Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E1-1 Base di dati Fornitori Fornitori (CodFornitore, Nome, Indirizzo, Città) Prodotti (CodProdotto, Nome, Marca, Modello)

Dettagli

Algebra relazionale. Algebra relazionale. Operatori dell algebra relazionale. Operatori dell algebra relazionale. Algebra relazionale.

Algebra relazionale. Algebra relazionale. Operatori dell algebra relazionale. Operatori dell algebra relazionale. Algebra relazionale. Algebra relazionale Algebra relazionale Introduzione Selezione e proiezione Prodotto cartesiano e join Natural join, theta-join e semi-join Outer join Unione e intersezione Differenza e antijoin Divisione

Dettagli

Lezione 6. Algebra e Calcolo Relazionale

Lezione 6. Algebra e Calcolo Relazionale Lezione 6 Algebra e Calcolo Relazionale 1 Sommario Esempio di Applicazione con Database (AZIENDA) Algebra Relazionale Operazioni Relazionali Unarie Operazioni dell Algebra Relazionale dalla teoria degli

Dettagli

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS)

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) 1 SQL Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) a.a. 2015/2016 http://www.di.uniba.it/~lisi/courses/basi-dati/bd2015-16.htm dott.ssa Francesca A. Lisi francesca.lisi@uniba.it

Dettagli

Basi di dati. 2. Il modello relazionale. Il modello relazionale. Relazione: tre accezioni. 2.1 Basi di dati relazionali. Giuseppe De Giacomo

Basi di dati. 2. Il modello relazionale. Il modello relazionale. Relazione: tre accezioni. 2.1 Basi di dati relazionali. Giuseppe De Giacomo asi di dati Giuseppe De Giacomo Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza Anno Accademico 2005/2006 Canale M-Z 2. Il modello relazionale 2.1 asi di dati

Dettagli

Equivalenza di Espressioni Algebriche

Equivalenza di Espressioni Algebriche Equivalenza di Espressioni Algebriche Basi di dati e sistemi informativi 1 Equivalenza di Espressioni Algebriche Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Equivalenza

Dettagli

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS)

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) 1 SQL Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) a.a. 2015/2016 http://www.di.uniba.it/~lisi/courses/basi-dati/bd2015-16.htm dott.ssa Francesca A. Lisi francesca.lisi@uniba.it

Dettagli

Gestione e Analisi dei Dati. Lezione 2 Vincoli su attributo Selezioni semplici su una tabella

Gestione e Analisi dei Dati. Lezione 2 Vincoli su attributo Selezioni semplici su una tabella Gestione e Analisi dei Dati Lezione 2 Vincoli su attributo Selezioni semplici su una tabella Vincoli sui Dati Regole del dominio di interesse Unicità di codici di corso e matricole Un codice deve corrispondere

Dettagli

Algebra e calcolo relazionale. Ripasso. Le 7 Virtù del DBMS persistenza affidabilità volume condivisione riservatezza efficienza efficacia

Algebra e calcolo relazionale. Ripasso. Le 7 Virtù del DBMS persistenza affidabilità volume condivisione riservatezza efficienza efficacia Algebra e calcolo relazionale Ripasso Le 7 Virtù del DBMS persistenza affidabilità volume condivisione riservatezza efficienza efficacia I 4 Livelli di astrazione Le Tabelle Livello fisico (o interno)

Dettagli

L algebra relazionale

L algebra relazionale L algebra relazionale Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: Algebra.pdf Sistemi Informativi L-A Linguaggi di manipolazione (DML)

Dettagli

Linguaggi per basi di dati. Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,

Linguaggi per basi di dati. Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Linguaggi per basi di dati Atzeni, Ceri, Paraboschi, Torlone asi di dati McGraw-Hill, 1996-2002 Capitolo 3: ALGERA E CALCOLO RELAZIONALE 07/06/2005 operazioni sullo schema DDL: data definition language

Dettagli

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor Interrogare una base di dati: algebra relazionale e SQL Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor Contesto didattico Il seguente materiale didattico è

Dettagli

Basi di dati. Modello relazionale dei dati. Prof.ssa Rosalba Giugno

Basi di dati. Modello relazionale dei dati. Prof.ssa Rosalba Giugno Basi di dati Modello relazionale dei dati Prof.ssa Rosalba Giugno DEFINIZIONE Un modello dei dati è un insieme di concetti utilizzati per organizzare i dati e descriverne la struttura in modo che essa

Dettagli

DataBase Management System - DBMS

DataBase Management System - DBMS DataBase Management System - DBMS Un sistema per la gestione di basi di dati o DBMS (Data Base Management System) è un sistema software in grado di gestire collezioni di dati che siano grandi condivise

Dettagli

La gestione delle interrogazioni

La gestione delle interrogazioni La gestione delle interrogazioni Basi di dati: Architetture e linee di evoluzione - Seconda edizione Capitolo 1 Appunti dalle lezioni Esecuzione e ottimizzazione delle query Un modulo del DBMS Query processor

Dettagli

Linguaggi di interrogazione per basi di dati relazionali

Linguaggi di interrogazione per basi di dati relazionali Linguaggi di interrogazione per basi di dati relazionali Il modello relazionale è stato il primo ad introdurre la possibilità di operare su insiemi di dati con operatori insiemistici Nei precedenti modelli

Dettagli

Modulo 8 I data base Unità 5 Le Query

Modulo 8 I data base Unità 5 Le Query Modulo 8 I data base Unità 5 Le Query Prof. Antonio Scanu 1 Le operazioni relazionali: In questa lezione focalizziamo l attenzione sulle operazioni che consentono di interrogare una base di dati relazionale.

Dettagli

SQL. Argomenti della lezione. Join esplicito. Interrogazioni complesse in SQL join esplicito outer join operatori aggregati interrogazioni nidificate

SQL. Argomenti della lezione. Join esplicito. Interrogazioni complesse in SQL join esplicito outer join operatori aggregati interrogazioni nidificate Argomenti della lezione SQL Interrogazioni complesse in SQL join esplicito outer join operatori aggregati interrogazioni nidificate Maternità Paternità Madre Figlio Olga Filippo Sergio Olga Filippo Persone

Dettagli

Algebra relazionale: operazioni

Algebra relazionale: operazioni Dipartimento di Elettronica ed ormazione Politecnico di Milano ormatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2011/2012 Algebra relazionale: operazioni Le presenti slide sono tratte dalle slide

Dettagli

SQL. SQL: una visione panoramica. SQL: "storia" Definizione dei dati

SQL. SQL: una visione panoramica. SQL: storia Definizione dei dati SQL SQL: una visione panoramica I lucidi presentati sono liberamente ispirati al contenuto del Capitolo 4 del libro Atzeni, Ceri, Paraboschi, Torlone Basi di dati - McGraw-Hill, 1999 Structured Query Language

Dettagli

Algebra Relazionale. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Algebra Relazionale. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma Algebra Relazionale 1 Linguaggi di interrogazione relazionale Linguaggi di interrogazione: permettono la manipolazione e il reperimento di dati da una base di dati Il modello relazionale supporta LI semplici

Dettagli

SQL QUERY: Le interrogazioni del database

SQL QUERY: Le interrogazioni del database Appunti della lezione di Database del 20 ottobre 2016 (mattina) Studenti: D Amuri Giuseppe, De Luca Federico Professore: Mario Bochicchio SQL QUERY: Le interrogazioni del database Per effettuare un interrogazione

Dettagli

SQL. Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative

SQL. Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative SQL SQL Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative l utente specifica quale informazione è di suo interesse, ma non come estrarla dai dati Le interrogazioni vengono

Dettagli

L algebra relazionale

L algebra relazionale L algebra relazionale Sistemi Informativi T Versione elettronica: 03.Algebra.pdf Linguaggi di manipolazione (DML) per DB Un linguaggio di manipolazione, o DML, permette di interrogare e modificare istanze

Dettagli

INFORMATICA GENERALE Prof. Alberto Postiglione. Scienze della Comunicazione Università di Salerno. INFORMATICA GENERALE Prof. Alberto Postiglione

INFORMATICA GENERALE Prof. Alberto Postiglione. Scienze della Comunicazione Università di Salerno. INFORMATICA GENERALE Prof. Alberto Postiglione INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione Università degli Studi di Salerno 2.3b: SQL (2) Interrogazioni semplici INFORMATICA GENERALE Prof. Alberto Postiglione Scienze

Dettagli

Operatori aggregati: COUNT

Operatori aggregati: COUNT Operatori aggregati: COUNT Il numero di figli di select count(*) as NumFigliDi where Padre = '' Paternità Padre Sergio Figlio Olga Filippo Andrea Aldo l operatore aggregato (count) viene applicato al risultato

Dettagli

BASI DATI: algebra relazionale

BASI DATI: algebra relazionale BASI DATI: algebra relazionale BIOINGEGNERIA ED INFORMATICA MEDICA 1 Algebra relazionale Definizione L'algebra relazionale è un insieme di operazioni (query) che servono per manipolare relazioni (tabelle).

Dettagli

Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi

Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi Informatica della Facoltà di Lingue e Letterature dell Università degli Studi di Torino. Qualsiasi altro Query (Interrogazioni) SQL Materiale aggiuntivo per il corso di laurea in Lingue e Culture per il

Dettagli

Corso di Basi di Dati

Corso di Basi di Dati Corso di Laurea in Ingegneria Gestionale Sapienza Università di Roma Corso di Basi di Dati A.A. 2016/2017 4 SQL : Structured Query Language Tiziana Catarci Ultimo aggiornamento : 22/02/2016 SQL : Structured

Dettagli

2 Algebra Relazionale

2 Algebra Relazionale Corso di Laurea in Ingegneria Gestionale SAPIENZA Università di Roma Esercitazioni del corso di Basi di Dati Prof.ssa Catarci e Prof.ssa Scannapieco Anno Accademico 2010/2011 Andrea Marrella Ultimo aggiornamento

Dettagli

Basi di Dati e Sistemi Informativi. Raffinamento dello schema e Normalizzazione nei database relazionali

Basi di Dati e Sistemi Informativi. Raffinamento dello schema e Normalizzazione nei database relazionali Basi di Dati e Sistemi Informativi nei database relazionali Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale Introduzione La modellazione E-R ci ha consentito di descrivere schemi relazionali

Dettagli

Algebra Relazionale e Calcolo Relazionale. L. Vigliano

Algebra Relazionale e Calcolo Relazionale. L. Vigliano Algebra Relazionale e Calcolo Relazionale Operazioni associate al modello relazionale Notazione algebrica Algebra relazionale Linguaggio procedurale interrogazioni espresse applicando operatori alle relazioni

Dettagli

Basi di dati: esercitazione. Paolo Atzeni 10/05/2006

Basi di dati: esercitazione. Paolo Atzeni 10/05/2006 Basi di dati: esercitazione Paolo Atzeni 10/05/2006 Esame del 30/06/2004 Considerare le seguenti relazioni (tutte senza valori nulli) R1(ABC), con vincolo di integrità referenziale fra C e R2 e con cardinalità

Dettagli

Interrogazioni semplici

Interrogazioni semplici Interrogazioni semplici Lorenzo Sarti 2009 Basi di Dati 1 select Campi considerati Matricola Cognome Nome Data di nascita A80198760 Bianchi Anna 22/03/1967 A80293450 Rossi Andrea 13/04/1968 A80198330 Neri

Dettagli

Algebra relazionale D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2012/13

Algebra relazionale D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2012/13 Algebra relazionale D O C E N T E P R O F. A L B E R T O B E L U S S I Anno accademico 2012/13 Riepilogo operatori algebra Operatori insiemistici Applicabili SOLO a relazioni con lo stesso schema: BASE

Dettagli

Modello logico dei dati utilizzato nell ambito delle basi di dati, introdotto da Codd nel 1970.

Modello logico dei dati utilizzato nell ambito delle basi di dati, introdotto da Codd nel 1970. Modello Relazionale Modello logico dei dati utilizzato nell ambito delle basi di dati, introdotto da Codd nel 1970. } modello dei dati insieme di strutture dati e regole logico ) strutture disponibili

Dettagli

SQL. Storia un po piu in dettaglio. SQL: "storia" Tre livelli per SQL-2. Standard, dialetti, mercato

SQL. Storia un po piu in dettaglio. SQL: storia Tre livelli per SQL-2. Standard, dialetti, mercato Trasparenze rielaborate da Atzeni, Ceri, Paraboschi, Torlone Basi di dati: modelli e linguaggi di programmazione McGraw-Hill, 2003 Capitolo 4: SQL-1, prima parte 11/03/2005 SQL Structured Query Language

Dettagli

ALGEBRA RELAZIONALE ALGEBRA RELAZIONALE

ALGEBRA RELAZIONALE ALGEBRA RELAZIONALE ALGEBRA RELAZIONALE Ridenominazione Unione Differenza Selezione Proiezione Prodotto Join θ-join Join naturale Semijoin Join esterno Valori nulli Interrogazioni / espressioni relazionali Esercizi cesarini-bdsi

Dettagli

SQL terza parte D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2010/11

SQL terza parte D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2010/11 SQL terza parte D O C E N T E P R O F. A L B E R T O B E L U S S I Anno accademico 2010/11 Operatori aggregati Costituiscono una estensione delle normali interrogazioni SQL (non hanno corrispondenza in

Dettagli

Indicare quale o quali delle seguenti affermazioni sono vere?

Indicare quale o quali delle seguenti affermazioni sono vere? Domanda 1 Indicare quale o quali delle seguenti affermazioni sono vere? L indipendenza dei dati permette di scrivere programmi senza conoscere le strutture fisiche dei dati L indipendenza dei dati permette

Dettagli

Sommario. Introduzione... 13

Sommario. Introduzione... 13 Sommario Introduzione... 13 1. Database pro e contro... 19 A cosa serve conoscere i database?...19 Le alternative alla gestione manuale...22 Quando non serve un database?...24 Domande ed esercizi...26

Dettagli

Gestione e Analisi dei Dati. Lezione 4 Relazioni multi tabella Relazioni uno-a-uno, uno-a-molti, molti-a-molti

Gestione e Analisi dei Dati. Lezione 4 Relazioni multi tabella Relazioni uno-a-uno, uno-a-molti, molti-a-molti Gestione e Analisi dei Dati Lezione 4 Relazioni multi tabella Relazioni uno-a-uno, uno-a-molti, molti-a-molti Prodotto Cartesiano Finora operatori unari lavorano sui dati di un unica tabella In realtà

Dettagli

Basi di dati (database)

Basi di dati (database) Basi di dati (database) 1 Scopo Gestione dell informazione Informazione: difficile da definire ma a tutti è chiara l importanza della sua gestione in diversi tipi di attività Esempi: aziende, banche, anagrafi,

Dettagli

Idoneita Informatica. Sistemi per la gestione di basi di Dati

Idoneita Informatica. Sistemi per la gestione di basi di Dati Idoneita Informatica Sistemi per la gestione di basi di Dati Prof. Mauro Gaspari mauro.gaspari@unibo.it Rielaborazione delle slide del Dott. Matteo Magnani e del Dott. Nicola Dragoni 1 Sistema Informativo

Dettagli

Universita di Milano Bicocca Corso di Basi di dati 1 in elearning C. Batini 6. SQL DDL 6.2 Data Description Language - 2

Universita di Milano Bicocca Corso di Basi di dati 1 in elearning C. Batini 6. SQL DDL 6.2 Data Description Language - 2 Universita di Milano Bicocca Corso di Basi di dati 1 in elearning C. Batini 6. SQL DDL 6.2 Data Description Language - 2 Vincoli di integrita 2 Cosa e un vincolo di integrita E una proprieta sempre valida

Dettagli

Data Management Software. Il linguaggio SQL. Query Innestate. Paolo Avallone Sr Consulting IT Specialist DB2, Data Management 10 Settembre 2003

Data Management Software. Il linguaggio SQL. Query Innestate. Paolo Avallone Sr Consulting IT Specialist DB2, Data Management 10 Settembre 2003 DB2 Data Management Software Il linguaggio SQL Query Innestate Paolo Avallone Sr Consulting IT Specialist DB2, Data Management 10 Settembre 2003 LEGGERE LE SEGUENTI ATTENZIONI Le informazioni contenute

Dettagli

Trasparenze rielaborate da Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999 Capitolo 4: SQL-2, seconda parte.

Trasparenze rielaborate da Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999 Capitolo 4: SQL-2, seconda parte. Trasparenze rielaborate da Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999 Capitolo 4: SQL-2, seconda parte 11/03/2005 Maternità Legami logici Paternità Madre Luisa Luisa Anna Anna Padre

Dettagli

ALGEBRA RELAZIONALE. L algebra relazionale

ALGEBRA RELAZIONALE. L algebra relazionale ALGEBRA RELAZIONALE 2 L algebra relazionale L insieme principale di operazioni per il modello relazionale è l algebra relazionale. Le operazioni dell algebra relazionale consentono all utente di specificare

Dettagli

Il modello relazionale. Relazione: tre accezioni. Relazione matematica. Parte II. Il modello relazionale

Il modello relazionale. Relazione: tre accezioni. Relazione matematica. Parte II. Il modello relazionale Il modello relazionale Parte II Il modello relazionale Proposto da E. F. Codd nel 1970 per favorire l indipendenza dei dati Disponibile come modello logico in DBMS reali nel 1981 (non è facile realizzare

Dettagli

4/16/07. Le Basi di Dati Relazionali. Concetti Fondamentali. Base di dati, tabella, ennupla, attributo, dominio. Valori nulli

4/16/07. Le Basi di Dati Relazionali. Concetti Fondamentali. Base di dati, tabella, ennupla, attributo, dominio. Valori nulli Base di dati, tabella, ennupla, attributo, dominio Le Basi di Dati Relazionali Concetti Fondamentali Valori nulli Vincoli di chiave, di ennupla, di riferimento 2 Modello logico dei DBMS (Data Base Management

Dettagli

Basi di Dati. Esercitazione 2: Interrogazioni in SQL. K. Donno - Interrogazioni in SQL

Basi di Dati. Esercitazione 2: Interrogazioni in SQL. K. Donno - Interrogazioni in SQL Basi di Dati Esercitazione 2: Interrogazioni in SQL DB di riferimento per esempi Consideriamo i seguenti schemi di una base di dati relazionale: MODELLI (cod_modello,nome,versione,cod_fabbrica) VEICOLI

Dettagli

Operazioni sui database

Operazioni sui database Operazioni sui database Le operazioni nel modello relazionale sono essenzialmente di due tipi: Operazioni di modifica della base di dati (update) Interrogazioni della base di dati per il recupero delle

Dettagli

Tabelle esempio: Impiegato/Dipartimento

Tabelle esempio: Impiegato/Dipartimento Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : SQL (3) Insiemistiche e Nidificate Prof. Alberto Postiglione

Dettagli

Linguaggio SQL. studenti matricola nome cognome citta anno 11 marco bini bologna 1985 13 laura sicuro rimini 1984 esami codice

Linguaggio SQL. studenti matricola nome cognome citta anno 11 marco bini bologna 1985 13 laura sicuro rimini 1984 esami codice Linguaggio SQL Il linguaggio SQL (Structured Query Language) è il linguaggio standard per la definizione, manipolazione e interrogazione delle basi di dati relazionali sostenuti codice matricola anno voto

Dettagli

Il modello Relazionale.

Il modello Relazionale. Il modello Relazionale c.vallati@iet.unipi.it Sommario Il modello Relazionale per la progettazione logica Come passare dal modello ER al modello relazionale Progettazione Logica Effettuata una progettazione

Dettagli

Il linguaggio SQL: query innestate

Il linguaggio SQL: query innestate Il linguaggio SQL: query innestate Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SQLc-subquery.pdf Sistemi Informativi L-A DB di riferimento

Dettagli

Corso di Laurea in Ingegneria Informatica Algoritmi e basi di dati Modulo Basi di dati a.a

Corso di Laurea in Ingegneria Informatica Algoritmi e basi di dati Modulo Basi di dati a.a Corso di Laurea in Ingegneria Informatica Algoritmi e basi di dati Modulo Basi di dati a.a. 2010-2011 2011 Docente: Gigliola Vaglini Docente laboratorio: Alessandro Lori 1 99999999 Lezione 9 I linguaggi

Dettagli

Operazioni nel Modello Relazionale

Operazioni nel Modello Relazionale Elaborazione Automatica dei Dati ALGEBA ELAZIONALE Enrico Cavalli Anno Accademico 2012-2013 Operazioni nel Modello elazionale Algebra elazionale Le operazioni dell algebra relazionale permettono di manipolare

Dettagli

APPUNTI DELLA LEZIONE DI DATABASE DEL 26/10/2016 Studenti: Marco D'Amato, Adriano Luigi Piscopello Professore: Mario Bochicchio

APPUNTI DELLA LEZIONE DI DATABASE DEL 26/10/2016 Studenti: Marco D'Amato, Adriano Luigi Piscopello Professore: Mario Bochicchio APPUNTI DELLA LEZIONE DI DATABASE DEL 26/10/2016 Studenti: Marco D'Amato, Adriano Luigi Piscopello Professore: Mario Bochicchio INTRODUZIONE L algebra relazionale è l algebra su cui si basa il linguaggio

Dettagli

3 SQL : Interrogazioni

3 SQL : Interrogazioni Corso di Laurea in Ingegneria Gestionale SAPIENZA Università di Roma Esercitazioni del corso di Basi di Dati Prof.ssa Catarci e Prof.ssa Scannapieco Anno Accademico 2010/2011 Andrea Marrella Ultimo aggiornamento

Dettagli

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 : SQL Operazioni di aggiornamento operazioni di inserimento: insert eliminazione: delete modifica: update di una o più ennuple di una

Dettagli

Operatori di base. σ F (r) = {t t r. F(t) = true} SELEZIONE σ F (r)

Operatori di base. σ F (r) = {t t r. F(t) = true} SELEZIONE σ F (r) Algebra relazionale Linguaggio dallo stile operazionale, in quanto rappresenta il piano di esecuzione di una query. Definisce un insieme di operazioni su relazioni. Le operazioni hanno come operandi una

Dettagli

Modello Relazionale. Architettura a tre livelli di un DBMS

Modello Relazionale. Architettura a tre livelli di un DBMS Modello Relazionale Modello logico dei dati utilizzato nell ambito delle basi di dati, introdotto da Codd nel 1970. modello dei dati insieme di strutture dati e regole ) logico strutture disponibili su

Dettagli

SQL: Structured Query Language. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

SQL: Structured Query Language. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma SQL: Structured Query Language 1 SQL:Componenti Principali Data Manipulation Language (DML): interrogazioni, inserimenti, cancellazioni, modifiche Data Definition Language (DDL): creazione, cancellazione

Dettagli

Il modello relazionale dei dati. modello relazionale 1

Il modello relazionale dei dati. modello relazionale 1 Il modello relazionale dei dati modello relazionale Cronologia dei modelli per la rappresentazione dei dati Modello gerarchico (anni 60) Modello reticolare (anni 70) Modello relazionale (anni 80) Modello

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezioni 6 7 Raffaella Gentilini 1 / 46 Sommario 1 Subquery (o Interrogazioni Nidificate) Interrogazioni Annidate con Predicati di Confronto Interrogazioni Annidate con

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 3 Raffaella Gentilini 1 / 52 Sommario 1 Il DML di SQL: Interrogazione di una BD 2 / 52 Data Manipulation Language (DML) Istruzioni del DML Le istruzioni del DML

Dettagli

Esercitazione 3 SQL 2

Esercitazione 3 SQL 2 Esercitazione 3 SQL 2 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E3-1 Schema della base di dati Persone (Nome, Sesso, Anno, Città) Discendenza (Genitore, Figlio) Stato (Città, Inizio, Fine, Stato)

Dettagli

Sistemi di Elaborazione delle Informazioni (C.I. 15) Basi di dati Introduzione teorica

Sistemi di Elaborazione delle Informazioni (C.I. 15) Basi di dati Introduzione teorica Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Sistemi di Elaborazione delle Informazioni (C.I. 15) Anno Accademico 2009/2010 Docente: ing. Salvatore Sorce Basi di dati Introduzione

Dettagli

Algebra Relazionale. algebra relazionale

Algebra Relazionale. algebra relazionale Algebra Relazionale algebra relazionale Linguaggi di Interrogazione linguaggi formali Algebra relazionale Calcolo relazionale Programmazione logica linguaggi programmativi SQL: Structured Query Language

Dettagli

LA NORMALIZZAZIONE. Prima parte

LA NORMALIZZAZIONE. Prima parte LA NORMALIZZAZIONE Prima parte Argomenti della lezione Forma normale e normalizzazione Ridondanze e anomalie Dipendenze funzionali Forma normale di Boyce e Codd Proprietà delle decomposizioni Forme normali

Dettagli

Corso di Basi di Dati

Corso di Basi di Dati Corso di Laurea in Ingegneria Gestionale Sapienza - Università di Roma Corso di Basi di Dati A.A. 2016/2017 10 Normalizzazione (cenni) Tiziana Catarci Ultimo aggiornamento : 22/02/2017 Forme normali Una

Dettagli

Basi di dati I 8 luglio 2016 Esame Compito A Tempo a disposizione: un ora e trenta minuti.

Basi di dati I 8 luglio 2016 Esame Compito A Tempo a disposizione: un ora e trenta minuti. Basi di dati I 8 luglio 2016 Esame Compito A Tempo a disposizione: un ora e trenta minuti. Cognome: Nome: Matricola: Domanda 1 (20%) Considerare la base di dati relazionale contenente le seguenti relazioni:

Dettagli

Basi di dati. L Algebra Relazionale. K. Donno - L Algebra Relazionale

Basi di dati. L Algebra Relazionale. K. Donno - L Algebra Relazionale Basi di dati L Algebra Relazionale Introduzione all Algebra Relazionale Una volta definito lo schema logico di un database, partendo da un Diagramma E-R, e dopo aver inserito le tabelle nel database, eventualmente

Dettagli

Corso di Basi di Dati A.A. 2013/2014

Corso di Basi di Dati A.A. 2013/2014 Corso di Laurea in Ingegneria Gestionale Sapienza - Università di Roma Corso di Basi di Dati A.A. 2013/2014 10 Normalizzazione (cenni) Tiziana Catarci, Andrea Marrella Ultimo aggiornamento : 14/05/2014

Dettagli

Introduzione all Algebra Relazionale

Introduzione all Algebra Relazionale Basi di dati L Algebra Relazionale Introduzione all Algebra Relazionale Una volta definito lo schema logico di un database, partendo da un Diagramma E-R, e dopo aver inserito le tabelle nel database, eventualmente

Dettagli

Forme normali. Le forme normali sono di solito definite sul modello relazionale, ma hanno senso in altri contesti, ad esempio il modello E-R

Forme normali. Le forme normali sono di solito definite sul modello relazionale, ma hanno senso in altri contesti, ad esempio il modello E-R La normalizzazione Forme normali Una forma normale è una proprietà di una base di dati relazionale che ne garantisce la qualità, cioè l'assenza di determinati difetti Quando una relazione non è normalizzata:

Dettagli

Alessandra Raffaetà. Esercizio: Cinema

Alessandra Raffaetà. Esercizio: Cinema Lezione 8 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Esercizio: Cinema

Dettagli

S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali. Alessandra Raffaetà

S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali. Alessandra Raffaetà Lezione 8 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Esercizio: Cinema

Dettagli

Le Basi di Dati. Sommario. Sistema Informatico. Sistema Informativo. Fondamenti di Informatica Anno Accademico 2010/2011

Le Basi di Dati. Sommario. Sistema Informatico. Sistema Informativo. Fondamenti di Informatica Anno Accademico 2010/2011 Sommario Sistema Informativo Progettazione Logica Sistema Informatico Il Modello Relazionale Dati e Informazione Relazioni e Tabelle Le Basi di Dati Basidi Dati e DBMS Compiti di un DBMS Concetti base

Dettagli

Operazioni Relazionali. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto san giovanni

Operazioni Relazionali. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto san giovanni Operazioni Relazionali Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto san giovanni Algebra relazionale Il modello logico Relazionale si fonda sull algebra relazionale Permette di

Dettagli

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, La normalizzazione

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, La normalizzazione Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 : La normalizzazione Forme normali Basi di dati - Modelli e linguaggi di interrogazione- Paolo Atzeni, Stefano Ceri, Stefano Paraboschi,

Dettagli

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 : SQL SQL originariamente "Structured Query Language", ora "nome proprio" linguaggio con varie funzionalità: contiene sia il DDL sia

Dettagli

Progettazione di basi di dati D B M G

Progettazione di basi di dati D B M G Progettazione di basi di dati D B M G Normalizzazione Introduzione Forma normale di Boyce Codd Decomposizione in forma normale Proprietà delle decomposizioni Decomposizione senza perdita Conservazione

Dettagli

Basi di dati. Selezione, proiezione e join. Linguaggi di interrogazione. Selezione, proiezione e join. Equivalenza di espressioni

Basi di dati. Selezione, proiezione e join. Linguaggi di interrogazione. Selezione, proiezione e join. Equivalenza di espressioni elezione, proiezione e join Basi di dati Linguaggi di interrogazione quali professori hanno esaminato Antonio? Nome Città CDip Carlo Carlo Bologna Bologna Antonio oma Log Cod Corso 1 2 3 Data Voto 7997

Dettagli

Normalizzazione. Definizione

Normalizzazione. Definizione Normalizzazione Definizione Le forme normali 2 Una forma normale è una proprietà di una base di dati relazionale che ne garantisce la qualità, cioè l'assenza di determinati difetti Quando una relazione

Dettagli

LA PROGETTAZIONE LOGICA

LA PROGETTAZIONE LOGICA LA PROGETTAZIONE LOGICA DALLO SCHEMA ER ALLO SCHEMA RELAZIONALE Da concettuale a logico! Traduzione di uno schema concettuale (ER) in uno schema (relazionale) logico! Fare attenzione ai vincoli di integrità!!

Dettagli

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, IL MODELLO RELAZIONALE

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, IL MODELLO RELAZIONALE Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 : IL MODELLO RELAZIONALE I modelli logici dei dati Tre modelli logici tradizionali gerarchico reticolare relazionale Più recente (e

Dettagli

SQL e algebra relazionale

SQL e algebra relazionale SQL e algebra relazionale Il linguaggio SQL consente una maggiore espressività dell algebra relazionale grazie a costrutti che permettono: di definire join più sofisticati di ordinare le righe dei risultati

Dettagli