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

Dimensione: px
Iniziare la visualizzazioe della pagina:

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

Transcript

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

2 DEFINIZIONE Un modello dei dati è un insieme di concetti utilizzati per organizzare i dati e descriverne la struttura in modo che essa risulti comprensibile a un elaboratore. Ogni modello di dati fornisce meccanismi di strutturazione Questi meccanismi di astrazione costituiscono l equivalente delle strutture dati nella programmazione.

3 Caratteristiche di un buon modello Espressività: permette di rappresentare in modo semplice e naturale i dati e le 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.

4 Il Modello Relazionale Introdotto da Codd nel E il modello più diffuso. E basato sul concetto matematico di RELAZIONE

5 RELAZIONI NOME MATRICOLA INDIRIZZO TELEFONO Mario Rossi Via Etnea Maria Bianchi Via Roma Givanni Verdi Via Catania Una Relazione n-aria è un sottoinsieme del prodotto cartesiano D 1 X D 2 X... D n di insiemi di valori di tipo elementare detti domini. Ogni elemento < d 1, d 2,, d n > si chiama n-upla

6 Schemi Uno schema di relazione R : {T} e una coppia formata dal nome di una relazione R e da un tipo di relazione dove Interi; Reali; Booleani; Stringhe; sono tipi primitivi;

7 Tipi Relazione se T 1, T 2,, T n sono tipi primitivi e A 1, A 2,, A n sono etichette, dette attributi, allora (A 1 :T 1, A 2 :T 2,, A n :T n ) e un tipo n-upla di grado n (l ordine non è significativo). se T è un tipo n-upla allora {T} e un tipo relazione.

8 Schemi Relazionali Uno Schema Relazionale è costituito da un insieme di schemi di relazione R i : {T i }, 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.

9 Aspetto estensionale Una n-upla t=(a 1 := v 1, A 2 := v 2,, A n := v n ) di tipo (A 1 :T 1, A 2 :T 2,, A n :T n ) è un insieme di coppie (A i, v i ) con v i di tipo T i. Una Relazione R di tipo {(A 1 :T 1, A 2 :T 2,, A n :T n )} è un insieme finito di n-uple di tipo (A 1 :T 1, A 2 :T 2,, A n :T n ).

10 ESEMPIO NOME MATRICOLA INDIRIZZO TELEFONO Mario Rossi Via Etnea Maria Bianchi Via Roma Givanni Verdi Via Catania E una relazione di tipo {(Nome : char, Matricola : int,indirizzo : char, Telefono :int )} e ciascuna riga è una n-upla della relazione.

11 Esempio di schema relazionale Le tabelle (Nome, Matricola, Indirizzo, Telefono), (Corso,Matricola,Voto), (Corso Professore) costituiscono un istanza dello 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)

12 dom(a i ) e l insieme dei possibili valori dell attributo A i ad esempio nella tabella Studenti(Corso,Matricola,Voto), dom(voto) = {18,19,,30,31}

13 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.

14 ESEMPI {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 NOME MATRICOLA INDIRIZZO TELEFONO Mario Rossi Via Etnea Ugo Bianchi Via Roma 2 NULL Teo Verdi Via Enna

15 Chiavi esterne Un insieme di attributi {A 1, A 2,, A n } di uno schema di relazione R è una chiave esterna che riferisce una chiave primaria {B 1, B 2,, B n } 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.a i = s.b i...

16 ESEMPIO 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 CORSO MATRICOLA VOTO Programmazione Architetture Programmazione Matematica Discreta Architettura NOME MATRICOL INDIRIZZO TELEFONO Mario Rossi Via Etnea Ugo Bianchi Via Roma Teo Verdi Via Enna

17 Vincoli di integrità ed istanze 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à.

18 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

19 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

20 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)

21 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

22 Esempi di valori nulli NOME MATRICOL INDIRIZZO TELEFONO Mario Rossi Via Etnea Ugo Bianchi Via Roma 2 NULL Teo Verdi Via Enna Telefono di Ugo Bianchi può non esserci, esserci ma non conosciuto, in attesa di essere installato

23 Basi di dati ALGEBRA RELAZIONALE Prof.ssa Rosalba Giugno

24 LINGUAGGI PER MODELLI RELAZIONALI Algebrici: una query è definita da un espressione algebrica sulle relazioni dello schema Logici: una query è definita da una formula della logica del primo ordine

25 ESEMPIO DI QUERY NOME MATRICOL INDIRIZZO TELEFONO Mario Rossi Via Etnea Ugo Bianchi Via Roma Teo Verdi Via Enna CORSO Programmazione Architetture Matematica Discreta PROFESSORE Ferro Pappalardo Lizzio PROFESSORE CORSO Programmazione Ferro Architetture Pappalardo CORSO MATRICOLA VOTO Programmazione Architetture Programmazione Matematica Discreta Architettura Quali Professori hanno dato piu' di 24 a Teo Verdi ed in quali corsi?

26 Algebra relazionale Un set di operatori che Sono definiti sulle relazioni Producono come risultato una relazione Gli operatori possono essere combinati per formare espressioni complesse

27 Operatori dell algebra relazionale Gli operatori primitivi dell Algebra Relazionale sono: Ridenominazione; Unione; Differenza; Proiezione; Restrizione (o Selezione); Prodotto. I simboli R,S,... denotano relazioni, A, B, attributi e X,Y, insiemi di attributi

28 Ridenominazione Operatore unario Modifica il nome di un attributo senza cambiarne il valore Definizione: Siano X gli attributi di R, A in X, B not in X. Allora δ A B (R) è con attributi (X-{A}) {B} δ A B (R)={t u R t[b] = u[a] t[c]=u[c] se C e diverso da B}.

29 Esempio Ridenominazione Corso Matricola Voto Programmazione EINN Corso Codice Studente Voto Programmazione EINN δ Matricola Codice Studente (Esami)

30 Unione, Differenza e Intersezione Le relazioni sono degli insiemi, quindi possiamo applicare gli operatori sugli insiemi Il risultato dev essere un set omogeneo di n- uple Quindi, applichiamo gli operatori sui set solo fra relazioni con gli stessi attributi Siano R ed S relazioni dello stesso tipo allora R S = {t t R t S} R-S = {t t R t S} R S = {t t R t S}

31 Esempio Unione

32 Esempio Intersezione

33 Esempio Differenza

34 Un esempio utile ma non fattibile Father e Mother sono attributi con nomi diversi ma entrambi sono Genitori Soluzione: ridenominare gli attributi

35 Ridenominazione e Unione δ Father Parent (Paternity) δ Mother Parent (Maternity)

36 Proiezione Produce risultati: Su un sottoinsieme degli attributi dell operando Con valori da tutte le n-uple della relazione Definizione Sia R una relazione e siano A 1, A 2,, A n alcuni suoi attributi allora: π A1, A2,, An (R) = {t[a 1, A 2,, A n ] t R} La cardinalita di π A1, A2,, An (R) puo essere minore di R nel caso di duplicati

37 Esempio Proiezione Proiezione

38 Un altro esempio di proiezione Si riduce la cardinalita del risultato rispetto all operando

39 Selezione (Restrizione) Produce risultati: Con lo stesso schema dell operando Con un sottoinsieme delle n-uple dell operando Quelle che soddisfano la condizione Definizione Sia R una relazione allora σ λ (R) = {t t R λ(t)} dove λ e una formula proposizionale costruita a partire dagli atomi A θ B e utilizzando i connettivi proposizionali,, A e B sono attributi di R o costanti θ {=,<, >,,, }

40 Esempio Selezione Selezione

41 Un altro esempio di Selezione

42 Prodotto (Cartesiano) Siano R(A 1 : T 1,, A n : T n ) ed S (A n+1 : T n+1,, A n+m : T n+m ) con {A 1,, A n } {A n+1,, A n+m }=. Allora si pone R x S = {tu t R u S}

43 Esempio prodotto cartesiano

44 Operatori Derivati Sono operatori utili che si possono esprimere in funzioni di quelli primitivi. Intersezione: Siano R ed S dello stesso tipo R S = {t t R t S}. Essa si può esprimere in funzione degli operatori primitivi: R S = R-(R-S)

45 JOIN (Giunzione) L operatore piu importante dell algebra relazionale Permette di combinare tuple da relazioni diverse basandosi sui valori degli attributi Fondamentalmente due tipi (piu qualche variante): Natural JOIN Theta JOIN

46 Natural JOIN

47 Definizione del Natural JOIN Sia R con attributi XY ed S con attributi YZ R S e una relazione di attributi XYZ costituita da tutte le n-uple t tali che: t[xy] R, t[yz] S. Quindi: R S = {t t[xy] R t[yz] S} Cioe : le n-uple del risultato sono ottenute combinando le n-uple di R e S che hanno gli stessi valori negli attributi con lo stesso nome

48 Un altro esempio di Natural JOIN Mimault Bernard Mimault Bernard

49 Ancora un altro esempio di Natural Join

50 JOIN incompleti Nel caso in cui alcuni valori tra gli attributi comuni non coincidono Quindi, alcune n-uple non partecipano al JOIN (dangling n-uple)

51 JOIN vuoti, un caso estremo Potrebbe anche succedere che nessuna n-upla trovi il corrispettivo

52 L altro caso estremo del JOIN Ogni n-upla di R 1 si combina con ogni n-upla di R 2 Cardinalita del risultato e il prodotto delle cardinalita

53 OUTER JOIN (Giunzione esterna) Una variante del JOIN per mantenere nel risultato le n-uple che non partecipano al JOIN Gli attributi delle dangling n-uple vengono riempiti con NULL Tre varianti: Left: solo dangling n-uple del primo operando Right: solo dangling n-uple del secondo operando Full: n-uple da entrambi gli operandi

54 Esempio di NATURAL OUTER JOIN

55 Proprieta del JOIN Il JOIN e Commutativo: R S = S R Associativo: (R S) T = R (S T) Quindi possiamo avere sequenze di JOIN senza rischio di ambiguita : R S T

56 Esempio di JOIN multipli

57 Prodotto cartesiano a partire dal JOIN Il JOIN e definito anche se non ci sono attributi comuni fra le relazioni In questo caso, non essendoci vincoli sulle tuple da selezionare, vengono selezionate tutte le tuple dalle relazioni del JOIN Prodotto cartesiano

58 Esempio di prodotto cartesiano generato dal JOIN

59 Theta-JOIN e Equi-JOIN Estensione del NATURAL JOIN Viene specificato un predicato per la selezione delle n-uple E un operatore derivato: R F S = σ F (R x S) Se F e una congiunzione di uguaglianze si parla di equi-join

60 Esempio di equi-join

61 Giunzione(Equijoin) Siano R(A 1 : T 1,, A n : T n ) ed S (A n+1 : T n+1,, A n+m : T n+m ) con {A 1,, A n } {A n+1,, A n+m }=. Allora si pone R Ai = Ak S = {tu t in R, u in S, t.a i =u.a k } i=1. n, k= n+1. n+m. La giunzione e derivata perche R Ai = Ak S = σ Ai = Ak (R x S)

62 Giunzione Naturale(Natural join) Siano R con attributi XY ed S con attributi YZ R S e una relazione di attributi XYZ costituita da tutte le n-uple t tali che: t[xy]in R, t[yz] in S. R S = {t t[xy] in R and t[yz] in S} La giunzione e derivata perché Si rinominano gli attributi Y in S come Y e si ottiene S. Si opera la giunzione (equijoin) rispetto ad Y ed Y. Si proietta rispetto a XYZ R S= π XYZ (R Y=Y S )

63 Semi-giunzione(Semi-join) Siano R con attributi XY ed S con attributi YZ R S e una relazione di attributi XY costituita da tutte le n-uple di R che partecipano a R S. La semi-giunzione e derivata perché R S= π XY (R S)

64 Studenti Esami NOME MATRICOLA INDIRIZZO TELEFONO Mario Rossi Via Etnea Ugo Bianchi Via Roma Teo Verdi Via Totino CORSO MATRICOLA VOTO Architetture Programmazione Architetture NOME Mario Rossi MATRICOLA INDIRIZZ O Via Etnea 1 TELEFONO Ugo Bianchi Via Roma

65 Giunzione Esterna La giunzione esterna è la giunzione naturale estesa con tutte le n-uple che non appartengono alla giunzione naturale, completate con valori null per gli attributi mancanti. Siano R[XY],S[YZ] R S = (R S) ((R- π XY (R S)) {Z=null} {X=null} ((S- π YZ (R S)))

66 Altre Giunzioni Esterne Nelle giunzioni esterne sinistre e destre si aggiungono solo le parti sinistre e destre. Siano R[XY],S[YZ] (giunzione esterna sinistra) R S = (R S) ((R- π XY (R S)) {Z=null}) (giunzione esterna destra) R S = (R S) {X=null} ((S- π YZ (R S)))

67 Unione Esterna Siano R[XY],S[YZ] due relazioni allora L unione esterna R S si ottiene estendendo le due tabelle con le colonne dell altro con valori nulli e si fa l unione.

68 Esempio di Unione Esterna A B C D X Y Z X X Y Z X X Y W X X Y W X R B C D E Y Z X Y Y Z X M Y W X Y Y W X M S A B C D E X Y Z X NULL X Y Z X NULL X Y W X NULL X Y W X NULL NULL Y Z X Y NULL Y Z X Y NULL Y W X Y NULL Y W X M R U $ S

69 Query (interrogazioni) L algebra relazionale puo quindi essere usata per interrogare una base di dati Una query e una funzione da una istanza di un database (insieme di relazioni) ad una relazione

70 Database di esercitazione

71 Esercizio 1 Trovare numero, nome ed eta di tutti gli impiegati che guadagnano piu di 40 mila euro

72 Esercizio 2 Trovare il numero dei responsabili degli impiegati che guadagnano piu di 40 mila euro

73 Trovare nome e salario dei responsabili degli impiegati che guadagnano piu di 40 mila euro. Esercizio 3

74 Esercizio 4 Trovare gli impiegati che guadagnano piu dei loro responsabili e visualizzare numero, nome e salario sia dell impiegato che del responsabile

75 Esercizio 5 Trovare numero e nome dei responsabili i cui impiegati guadagnano TUTTI piu di 40 mila euro

76 Una convenzione e notazione alternativa per i join Per "riconoscere" attributi con lo stesso nome gli premettiamo il nome della relazione Usiamo "assegnazioni" (viste) per ridenominare le relazioni (e gli attributi solo quando serve per l'unione)

77 Trovare gli impiegati che guadagnano più del proprio capo, mostrando matricola, nome e stipendio dell'impiegato e del capo PROJ Matr,Nome,Stip,MatrC,NomeC,StipC (SEL Stipendio>StipC ( REN MatrC,NomeC,StipC,EtàC Matr,Nome,Stip,Età (Impiegati) JOIN MatrC=Capo (Supervisione JOIN Impiegato=Matricola Impiegati)))

78 PROJ Matr,Nome,Stip,MatrC,NomeC,StipC (SEL Stip>StipC ( REN MatrC,NomeC,StipC,EtàC Matr,Nome,Stip,Età (Imp) JOIN MatrC=Capo (Sup JOIN Imp=Matr Imp))) Capi := Imp PROJ Imp.Matr, Imp.Nome, Imp.Stip,Capi.Matr,Capi.Nome, Capi.Stip (SEL Imp.Stip>Capi.Stip ( Capi JOIN Capi.Matr=Capo (Sup JOIN Imp=Imp.Matr Imp)))

79 Selezione con valori nulli Impiegati Matricola Cognome Filiale Età Rossi Roma 32 Neri Milano 45 Bruni Milano NULL SEL Età > 40 (Impiegati) la condizione atomica è vera solo per valori non nulli

80 Un risultato non desiderabile SEL Età>30 (Persone) SEL Età 30 (Persone) Persone Perché? Perché le selezioni vengono valutate separatamente! Ma anche SEL Età>30 Età 30 (Persone) Persone Perché? Perché anche le condizioni atomiche vengono valutate separatamente!

81 Selezione con valori nulli: soluzione SEL Età > 40 (Impiegati) la condizione atomica è vera solo per valori non nulli per riferirsi ai valori nulli esistono forme apposite di condizioni: IS NULL IS NOT NULL si potrebbe usare (ma non serve) una "logica a tre valori" (vero, falso, sconosciuto)

82 Quindi: SEL Età>30 (Persone) SEL Età 30 (Persone) SEL Età IS NULL (Persone) = SEL Età>30 Età 30 Età IS NULL (Persone) = Persone

83 Impiegati Matricola Cognome Filiale Età Rossi Neri Milano Roma Bruni Neri Milano NULL Bruni Milano NULL SEL (Età > 40) OR (Età IS NULL) (Impiegati)

84 Viste (relazioni derivate) Rappresentazioni diverse per gli stessi dati (schema esterno) Relazioni derivate: relazioni il cui contenuto è funzione del contenuto di altre relazioni (definito per mezzo di interrogazioni) Relazioni di base: contenuto autonomo Le relazioni derivate possono essere definite su altre derivate, ma

85 Architettura standard (ANSI/SPARC) a tre livelli per DBMS utente utente utente utente utente Schema esterno Schema esterno Schema esterno Schema logico Schema interno BD

86 Viste, esempio Afferenza Impiegato Rossi Neri Bianchi Reparto A B B Direzione Reparto A B Capo Mori Bruni una vista: Supervisione = PROJ Impiegato, Capo (Afferenza JOIN Direzione)

87 Viste virtuali e materializzate Due tipi di relazioni derivate: viste materializzate relazioni virtuali (o viste)

88 Viste materializzate relazioni derivate memorizzate nella base di dati vantaggi: immediatamente disponibili per le interrogazioni svantaggi: ridondanti appesantiscono gli aggiornamenti sono raramente supportate dai DBMS

89 Viste virtuali relazioni virtuali (o viste): sono supportate dai DBMS (tutti) una interrogazione su una vista viene eseguita "ricalcolando" la vista (o quasi)

90 Interrogazioni sulle viste Sono eseguite sostituendo alla vista la sua definizione: SEL Capo='Leoni' (Supervisione) viene eseguita come SEL Capo='Leoni' ( PROJ Impiegato, Capo (Afferenza JOIN Direzione))

91 Viste, motivazioni Schema esterno: ogni utente vede solo ciò che gli interessa e nel modo in cui gli interessa, senza essere distratto dal resto ciò che e' autorizzato a vedere (autorizzazioni) Strumento di programmazione: si può semplificare la scrittura di interrogazioni: espressioni complesse e sottoespressioni ripetute Utilizzo di programmi esistenti su schemi ristrutturati Invece: L'utilizzo di viste non influisce sull'efficienza delle interrogazioni

92 Viste come strumento di programmazione Trovare gli impiegati che hanno lo stesso capo di Rossi Senza vista: PROJ Impiegato ((Afferenza JOIN Direzione) JOIN REN ImpR,RepR Imp,Reparto ( SEL Impiegato='Rossi' (Afferenza JOIN Direzione))) Con la vista: PROJ Impiegato (Supervisione JOIN REN ImpR,RepR Imp,Reparto ( SEL Impiegato='Rossi' (Supervisione)))

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

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

Parte III. L algebra relazionale

Parte III. L algebra relazionale Parte III L algebra relazionale asi di dati - prof. Silvio Salza - a.a. 2014-2015 III - 1 Linguaggi di interrogazione Dichiarativi: specificano le proprietà del risultato ("che cosa") Procedurali: specificano

Dettagli

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

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

Correttezza. Esempi di TRC. AR è esprimibile tramite TRC. AR è esprimibile tramite TRC. AR è esprimibile tramite TRC

Correttezza. Esempi di TRC. AR è esprimibile tramite TRC. AR è esprimibile tramite TRC. AR è esprimibile tramite TRC Esempi di TRC Matricole degli studenti che hanno sostenuto matematica ma non basi di dati { t t1 ESAME, t2 CORSO ( t[matr]=t1[matr] t1[codcorso]=t2[codcorso] t2[titolo]= matematica ) ( t3 ESAME, t4 CORSO

Dettagli

Algebra e Calcolo relazionale. Algebra e calcolo relazionale (parte 2)

Algebra e Calcolo relazionale. Algebra e calcolo relazionale (parte 2) Algebra e calcolo relazionale (parte 2) Algebra e valori nulli Persone Nome Età Reddito Aldo 35 15 Andrea 27 21 Maria NULL 42 σ Età>30 (Persone) Quali ennuple compaiono nel risultato? La prima sì, la seconda

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

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

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

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

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

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

DB - Modello relazionale dei dati. DB - Modello Relazionale 1

DB - Modello relazionale dei dati. DB - Modello Relazionale 1 DB - Modello relazionale dei dati DB - Modello Relazionale 1 Definizione Un modello dei dati è un insieme di meccanismi di astrazione per definire una base di dati, con associato un insieme predefinito

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

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

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

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

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

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

Il modello relazionale

Il modello relazionale Il modello relazionale Il modello relazionale Modello logico dei dati Basato sul concetto di relazione o tabella Relazione: da teoria degli insiemi 2 Il modello relazionale Garantisce indipendenza fisica

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

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

RELAZIONI E BASI DI DATI

RELAZIONI E BASI DI DATI Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno :Modello Relazionale (2)-Relazioni e DB, valori nulli Prof.

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

I modelli logici dei dati. Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw -Hill, IL MODELLO RELAZIONALE

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

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

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

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

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

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 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

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

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

Informatica Industriale Modello informatico: Applicativo Modello relazionale dei dati

Informatica Industriale Modello informatico: Applicativo Modello relazionale dei dati DIIGA - Università Politecnica delle Marche A.A. 2006/2007 Informatica Industriale Modello informatico: Applicativo Modello relazionale dei dati Luca Spalazzi spalazzi@diiga.univpm.it www.diiga.univpm.it/~spalazzi/

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 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

Informatica per Statistica Riassunto della lezione del 06/12/2013

Informatica per Statistica Riassunto della lezione del 06/12/2013 Informatica per Statistica Riassunto della lezione del 06/12/2013 Igor Melatti Introduzione alla progettazione logica di basi di dati Questo riassunto è da intendersi come un commento alle slide BD2002-02.PDF

Dettagli

I modelli logici dei dati

I modelli logici dei dati I modelli logici dei dati I modelli logici tradizionali sono tre: gerarchico reticolare relazionale I modelli gerarchio e reticolare sono più vicini alle strutture fisiche di memorizzazione. Quello relazionale

Dettagli

Algebra relazionale e interrogazioni

Algebra relazionale e interrogazioni Algebra relazionale e interrogazioni A. Lorenzi, E. Cavalli INFORMATICA PER SISTEMI INFORMATIVI AZIENDALI Copyright Istituto Italiano Edizioni Atlas Operazioni relazionali 2 Algebra relazionale Gli operatori

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

Basi di da' Il modello relazionale. Anna Monreale Università di Pisa

Basi di da' Il modello relazionale. Anna Monreale Università di Pisa Basi di da' Il modello relazionale Anna Monreale Università di Pisa Sommario Introduzione Base di da', tabella, ennupla, a6ributo, dominio Valori nulli Vincoli di integrità di chiave di ennupla di riferimento

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 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

MODELLI DEI DATI. Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia

MODELLI DEI DATI. Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : Modelli dei Dati MODELLI DEI DATI Prof. Alberto Postiglione

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

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

Fondamenti di Teoria delle Basi di Dati

Fondamenti di Teoria delle Basi di Dati Fondamenti di Teoria delle Basi di Dati Riccardo Torlone Parte 1: Introduzione Obiettivi La conoscenza della teoria delle basi di dati? No (o non solo) Piuttosto: Come si può affrontare un problema in

Dettagli

Ordo et connexio rerum idem est ac ordo et connexio idearum

Ordo et connexio rerum idem est ac ordo et connexio idearum BASI DI DATI IL MODELLO RELAZIONALE Prof. Fabio A. Schreiber Dipartimento di Elettronica e Informazione Politecnico di Milano tratto da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati - McGraw-Hill Ordo

Dettagli

Le basi di dati. Base di dati = dati + DBMS.

Le basi di dati. Base di dati = dati + DBMS. Le basi di dati. Lo scopo di una base di dati è la gestione dell informazione (in genere una grande quantità di informazione). L informazione è difficile da definire, dal momento che i database vengono

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

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

Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia. Università degli Studi di Salerno

Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia. Università degli Studi di Salerno Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : Modelli dei Dati Prof. Alberto Postiglione Università degli

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

Instanze inconsistenti. Informatica II Basi di Dati (07/08) Parte 2. Instanze inconsistenti. Vincoli di integrità

Instanze inconsistenti. Informatica II Basi di Dati (07/08) Parte 2. Instanze inconsistenti. Vincoli di integrità Informatica II Basi di Dati (07/08) Parte 2 Gianluca Torta Dipartimento di Informatica dell Università di Torino torta@di.unito.it, 0116706782 Instanze inconsistenti Non tutte le tuple rappresentano informazione

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

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

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algebra di Boole Stefano Cagnoni Algebra di Boole L algebra

Dettagli

Interrogazioni nidificate

Interrogazioni nidificate Interrogazioni nidificate Nella clausola where si possono utilizzare valori prodotti da altre istruzioni select utilizzando any (qualsiasi) o all (tutti) insieme agli operatori di confronto Trovare nome,

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

CAPITOLO V. DATABASE: Il modello relazionale

CAPITOLO V. DATABASE: Il modello relazionale CAPITOLO V DATABASE: Il modello relazionale Il modello relazionale offre una rappresentazione matematica dei dati basata sul concetto di relazione normalizzata. I principi del modello relazionale furono

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

Progettazione concettuale usando il modello Entità-Relazione (ER)

Progettazione concettuale usando il modello Entità-Relazione (ER) Progettazione concettuale usando il modello Entità-Relazione (ER) 1 Introduzione alla progettazione delle basi di dati Progettazione concettuale (in questa fase si usa il modello ER) Quali sono le entità

Dettagli

Elena Baralis 2007 Politecnico di Torino 1

Elena Baralis 2007 Politecnico di Torino 1 Introduzione Sistemi informativi 2 Introduzione Base di dati Modello dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS 4 6 2007 Politecnico di Torino 1 7 8 9 10 Sistema informatico Nei sistemi informatici,

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

Gestione di basi di dati in Access. SUISM Docente: Ugo de Liguoro a.a Asti

Gestione di basi di dati in Access. SUISM Docente: Ugo de Liguoro a.a Asti Gestione di basi di dati in Access SUISM Docente: Ugo de Liguoro a.a. 2003-2004 Asti Indice 1. Un primo esempio: la rubrica telefonica 2. Progettazione di un DB 3. Popolamento 4. Interrogazioni (Queries)

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

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

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

Il linguaggio SQL: le viste

Il linguaggio SQL: le viste Il linguaggio SQL: le viste Basi di dati 1 Il linguaggio SQL: le viste Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Il linguaggio SQL: le viste Basi di dati 2 Introduzione

Dettagli

Normalizzazione Progettazione di basi di dati Normalizzazione Normalizzazione Normalizzazione e modello ER Esempio Esame Superato

Normalizzazione Progettazione di basi di dati Normalizzazione Normalizzazione Normalizzazione e modello ER Esempio Esame Superato Progettazione di basi di dati Introduzione Forma normale di Boyce Codd Decomposizione in forma normale Proprietà delle decomposizioni Decomposizione senza perdita Conservazione delle dipendenze D B M G

Dettagli

Progettazione di basi di dati

Progettazione di basi di dati Progettazione di basi di dati Introduzione Forma normale di Boyce Codd Decomposizione in forma normale Proprietà delle decomposizioni Decomposizione senza perdita Conservazione delle dipendenze 007 Politecnico

Dettagli

I modelli logici dei dati

I modelli logici dei dati I modelli logici dei dati IL MODELLO RELAZIONALE Tre modelli logici tradizionali gerarchico reticolare relazionale Più recente (e poco diffuso) a oggetti 08/03/2006 2 Modelli logici, caratteristiche Il

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

MODELLI LOGICI DEI DATI

MODELLI LOGICI DEI DATI MODELLI DEI DATI I MODELLI COSTITUISCONO UNA STRUTTURAZIONE SEMPLIFICATA DELLA REALTA CHE NE ACCOGLIE ASPETTI SPECIFICI E AIUTA A COMPRENDERLA MEGLIO Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,

Dettagli

2.2a: MODELLO RELAZIONALE. (1 Struttura)

2.2a: MODELLO RELAZIONALE. (1 Struttura) 2.2a: MODELLO RELAZIONALE (1 Struttura) Introduzione Formulato da Codd nel 1970 Codd, E.F. A Relational Model of Data for Large Shared Data Banks Communications of the ACM, vol. 13, num. 6, jun 1970, pp.

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

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

Caratteristiche di un linguaggio ad alto livello

Caratteristiche di un linguaggio ad alto livello Caratteristiche di un linguaggio ad alto livello Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono

Dettagli

Interrogazioni nidificate

Interrogazioni nidificate Interrogazioni nidificate Trovare nome, cognome e matricola degli studenti che non hanno fatto esami select Matricola,Nome,Cognome from studenti where matricola all (select studente group by studente)

Dettagli

FUNZIONI BOOLEANE. Vero Falso

FUNZIONI BOOLEANE. Vero Falso FUNZIONI BOOLEANE Le funzioni booleane prendono il nome da Boole, un matematico che introdusse un formalismo che opera su variabili (dette variabili booleane o variabili logiche o asserzioni) che possono

Dettagli

Le basi di dati. Lez. 3: Il Modello Relazionale

Le basi di dati. Lez. 3: Il Modello Relazionale Le basi di dati Lez. 3: Il Modello Relazionale Il modello Relazionale Il modello relazionale è il modo più semplice e naturale di rappresentare i dati. Inventato da Edward Codd nel 1970 ricercatore presso

Dettagli

Corso di Laurea in Ingegneria Informatica Fondamenti di informatica II Modulo Basi di dati a.a

Corso di Laurea in Ingegneria Informatica Fondamenti di informatica II Modulo Basi di dati a.a Corso di Laurea in Ingegneria Informatica Fondamenti di informatica II Modulo Basi di dati a.a. 2013-2014 Docente: Gigliola Vaglini Docenti laboratorio: Francesco Pistolesi Lezione 2 Il modello relazionale

Dettagli

Normalizzazione di Basi di Dati

Normalizzazione di Basi di Dati Normalizzazione di Basi di Dati Prof.ssa Rosalba Giugno Queste slides sono state modificate a partire da quelle fornite dagli autori del nostro libro di testo Forme normali Una forma normale è una proprietà

Dettagli

Basi di Dati. Corso di Informatica. Memorizzazione dei Dati. Accesso ai Dati. Corso di Laurea in Conservazione e Restauro dei Beni Culturali

Basi di Dati. Corso di Informatica. Memorizzazione dei Dati. Accesso ai Dati. Corso di Laurea in Conservazione e Restauro dei Beni Culturali Corso di Laurea in Conservazione e Restauro dei Beni Culturali Corso di Informatica Gianluca Torta Dipartimento di Informatica Tel: 011 670 6782 Mail: torta@di.unito.it Basi di Dati lo scopo delle Basi

Dettagli

Informatica Industriale Modello funzionale: Informazione Modello Entità-Relazione

Informatica Industriale Modello funzionale: Informazione Modello Entità-Relazione DIIGA - Università Politecnica delle Marche A.A. 2006/2007 Informatica Industriale Modello funzionale: Informazione Modello Entità-Relazione Luca Spalazzi spalazzi@diiga.univpm.it www.diiga.univpm.it/~spalazzi/

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

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

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

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

Forme normali. Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill. La normalizzazione. Normalizzazione. Una relazione con anomalie.

Forme normali. Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill. La normalizzazione. Normalizzazione. Una relazione con anomalie. Forme normali Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill Hill,, 1996-2002 Capitolo 9: La normalizzazione 23/10/2002 Una forma normale è una proprietà di una base di dati relazionale che

Dettagli

Università degli Studi di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica ALGEBRA BOOLEANA

Università degli Studi di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica ALGEBRA BOOLEANA Università degli Studi di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica ALGEBRA BOOLEANA Introduzione George Boole (1815-1864) nel 1854 elaborò una algebra basata su predicati logici. Valori

Dettagli

Informatica B. Introduzione alle Basi di Dati e ai DBMS

Informatica B. Introduzione alle Basi di Dati e ai DBMS ormatica B Introduzione alle Basi di Dati e ai DBMS ormazioni e dati Dato: elemento semanticamente significativo (data, codice, ecc.), generalmente in formato numerico o testuale, che l azienda è interessata

Dettagli

Modello Entità-Relazione

Modello Entità-Relazione Modello Entità-Relazione Modelli concettuali, perché? servono per ragionare sulla realtà di interesse, indipendentemente dagli aspetti realizzativi permettono di rappresentare le classi di dati di interesse

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

Modello relazionale: Concetti Base. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Modello relazionale: Concetti Base. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma Modello relazionale: Concetti Base Schema di una Relazione Lo schema di una relazione specifica: Il nome della relazione Il nomediognicampo(o colonna o attributo) e il dominio di ciascun campo Esempio:

Dettagli

Tipi di dato. Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi:

Tipi di dato. Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi: Tipi di dato Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi: esprimere in modo sintetico la loro rappresentazione in memoria, e un insieme di operazioni ammissibili permettere

Dettagli

Il potere espressivo di un linguaggio è caratterizzato da: PROGRAMMA = DATI + CONTROLLO

Il potere espressivo di un linguaggio è caratterizzato da: PROGRAMMA = DATI + CONTROLLO LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente) quali istruzioni di

Dettagli

Le variabili logiche possono essere combinate per mezzo di operatori detti connettivi logici. I principali sono:

Le variabili logiche possono essere combinate per mezzo di operatori detti connettivi logici. I principali sono: Variabili logiche Una variabile logica (o booleana) è una variable che può assumere solo uno di due valori: Connettivi logici True (vero identificato con 1) False (falso identificato con 0) Le variabili

Dettagli