Corso di Basi di Dati

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Corso di Basi di Dati"

Transcript

1 Corso di Basi di Dati L Algebra Relazionale Home page del corso:

2 L algebra relazionale è un linguaggio (procedurale) di interrogazione per basi di dati relazionali. Altri linguaggi DML di interrogazione: SQL2/SQL3 (standard de facto, già visto..) Calcolo relazionale (linguaggio dichiarativo) Datalog (basato su Prolog)

3 All interno di un DBMS, le query SQL sono controllate ed eseguite da un interprete SQL. L interprete spesso traduce l SQL in un altro linguaggio procedurale (~algebra relazionale) per motivi di: Facilità d esecuzione à è possibile scomporre query complesse in una sequenza di procedure da eseguire. Ottimizzazione à è possibile riscrivere (automaticamente) le query procedurali in modo da consumare meno memoria o tempo di esecuzione.

4 Il linguaggio dell algebra relazionale è costituito da una serie di operatori (algebrici) che: si applicano ad una relazione (definizione di relazione nel modello relazionale). producono in output una relazione. sono componibili, ossia è possibile utilizzarli in cascata per creare interrogazioni complesse. Gli operatori possono essere unari o binari.

5 Interrogazione SQL Generata dall utente/ applicazione Traduttore SQL à Linguaggio Procedurale Interrogazione linguaggio procedurale Ottimizzatore di query Interrogazione ottimizzata Esecuzione DB INTERPRETE SQL DEL DBMS

6 Il linguaggio dell algebra relazionale è costituito da una serie di operatori (algebrici): Operatori su insiemi: unione, intersezione, differenza. Operatori su attributi: ridenominazione, selezione, proiezioni. Operatori intra-relazionali: join naturale, thetajoin, equi-join, etc.

7 Le relazioni sono insiemi à è possibile definire operatori insiemistici su di esse: Unione di r 1 (X) ed r 2 (X): Intersezione di r 1 (X) ed r 2 (X): r = r 1 r 2 = {t t r 1 OR t r 2 } r = r 1 r 2 = {t t r 1 AND t r 2 } Differenza di r 1 (X) ed r 2 (X): r = r 1 r 2 = {t t r 1 AND t r 2 } Le relazioni r 1 ed r 2 devono avere lo stesso schema

8 CALCIATORI Nome Cognome Nascita Giuseppe Rossi 10/03/19769 Roberto Bianchi 14/06/1982 Michele Verdi 17/08/1983 ALLENATORI Nome Cognome Nascita Giovanni Bianchi 10/06/1980 Roberto Bianchi 14/06/1982 Michele Verdi 17/08/1983 CALCIATORI ALLENATORI Nome Cognome Nascita Giuseppe Rossi 10/03/19769 Roberto Bianchi 14/06/1982 Michele Verdi 17/08/1983 CALCIATORI ALLENATORI Nome Cognome Nascita Roberto Bianchi 14/06/1982 Michele Verdi 17/08/1983 Giovanni Bianchi 10/06/1980

9 CALCIATORI Nome Cognome Nascita Giuseppe Rossi 10/03/19769 Roberto Bianchi 14/06/1982 Michele Verdi 17/08/1983 ALLENATORI Nome Cognome Data Giovanni Bianchi 10/06/1980 Roberto Bianchi 14/06/1982 Michele Verdi 17/08/1983 CALCIATORI ALLENATORI Nome Cognome??? CALCIATORI ALLENATORI Nome Cognome??? Q. Cosa accade se le relazioni non hanno esattamente lo stesso schema, ma dispongono di attributi con nomi diversi?

10 L operatore di ridenominazione ρ consente di modificare i nomi degli attributi di una relazione. ρ B1,B2, BM ß A1, A2,.. AM (r) SEMANTICA: Modifica lo schema della relazione, ridenominando gli attributi A 1, A 2, A M in B 1, B 2, B M senza alterare i dati della relazione. B B B A A A

11 CALCIATORI Nome Cognome Nascita Giuseppe Rossi 10/03/19769 Roberto Bianchi 14/06/1982 Michele Verdi 17/08/1983 ALLENATORI Nome Cognome Data Giovanni Bianchi 10/06/1980 Roberto Bianchi 14/06/1982 Michele Verdi 17/08/1983 CALCIATORI ρ NASCITA< DATA (ALLENATORI ) Nome Cognome Nascita Giuseppe Rossi 10/03/19769 Roberto Bianchi 14/06/1982 Michele Verdi 17/08/1983 CALCIATORI ρ NASCITA< DATA (ALLENATORI ) Nome Cognome Nascita Roberto Bianchi 14/06/1982 Michele Verdi 17/08/1983 Giovanni Bianchi 10/06/1980

12 L operatore di selezione σ F (r) consente di selezionare un sottoinsieme delle tuple della relazione r, in base alla condizione specificata da F. Relazione r A A A σ F (r) Relazione r A A A Insieme delle righe di r che soddisfano la condizione F

13 L operatore di selezione σ F (r) consente di selezionare un sottoinsieme delle tuple della relazione r, in base alla condizione specificata da F. σ F (r) = {t t r AND F(t) = TRUE} La condizione F è definita come insieme di predicati connessi da operatori logici. F= P 1 Op P 2 Op P N Op e un operatore booleano (AND, OR, NOT)

14 La condizione F e definita come insieme di predicati connessi da operatori logici. F= P 1 Op P 2 Op P N Ogni predicato è del tipo AθB oppure Aθc, dove: θ e un operatore di confronto (<,>,=,<>,<=,>=). A e B sono attributi di r, su cui ha senso l operatore contiene una valore compatibile con il dominio di A.

15 CALCIATORI Nome Cognome Nascita Anni Societa Giuseppe Rossi 10/03/ Dinamo Roberto Bianchini 14/06/ Polisportiva Michele Verdi 17/08/ Polisportiva Giovanni Bianchi 10/06/ Dinamo σ (ANNI >30) (SOCIETA=DINAMO) (CALCIATORI ) Nome Cognome Nascita Anni Societa Giuseppe Rossi 10/03/ Dinamo

16 CALCIATORI Nome Cognome Nascita Anni Societa Giuseppe Rossi 10/03/ Dinamo Roberto Bianchini 14/06/ Polisportiva Michele Verdi 17/08/ Polisportiva Giovanni Bianchi 10/06/ Dinamo σ (NOME="GIUSEPPE") (COGNOME="BIANCHI ") (CALCIATORI ) Nome Cognome Nascita Anni Societa Giuseppe Rossi 10/03/ Dinamo Giovanni Bianchi 10/06/ Dinamo

17 CALCIATORI Nome Cognome Nascita Anni Societa Giuseppe Rossi 10/03/ Dinamo Roberto Bianchini 14/06/1982 NULL Polisportiva Michele Verdi 17/08/ NULL Giovanni Bianchi 10/06/ Dinamo σ (ANNI >30) (SOCIETA=DINAMO) (CALCIATORI ) Q. Cosa accade in presenza di valori nulli?

18 A. Come in SQL, si utilizza una logica a 3 valori: True (T), False (F), Unknown (U). NOT AND T F U OR T F U T F T T F U T T T T F T F F F F F T F U U U U U F U U T U U Si utilizzano gli operatori IS NULL e IS NOT NULL per verificare se un certo attributo ha valore uguale a NULL o meno.

19 CALCIATORI Nome Cognome Nascita Anni Societa Giuseppe Rossi 10/03/19769 NULL Dinamo Roberto Bianchi 14/06/ Polisportiva Michele Verdi 17/08/ Polisportiva Giovanni Bianchi 10/06/ NULL σ (ANNI >30) (SOCIETA=DINAMO) (CALCIATORI ) Nome Cognome Nascita Anni Societa

20 CALCIATORI Nome Cognome Nascita Anni Societa Giuseppe Rossi 10/03/19769 NULL Dinamo Roberto Bianchi 14/06/ Polisportiva Michele Verdi 17/08/ Polisportiva Giovanni Bianchi 10/06/ NULL σ (ANNI >30) ((SOCIETA=DINAMO) (SOCIETA IS NULL )) (CALCIATORI ) Nome Cognome Nascita Anni Societa Giovanni Bianchi 10/06/ NULL

21 L operatore di proiezione π Y (r) consente di selezionare un sottoinsieme degli attributi di r. π Y (r) = {t[y] t r} Y=(A 1,A 5 ) A A A A A π Y (r) A

22 L operatore di proiezione π Y (r) consente di selezionare un sottoinsieme degli attributi di r. Qual è la cardinalità di π Y (r)? Nel caso generale, π Y (r) <= r Se Y è superchiave di R, allora π Y (r) = r Q. Vale anche il viceversa? (Se π Y (r) = r allora Y è una superchiave di R?)

23 CALCIATORI Nome Cognome Nascita Anni Societa Giuseppe Rossi 10/03/ Dinamo Roberto Bianchi 14/06/ Polisportiva Michele Verdi 17/08/ Polisportiva Giovanni Bianchi 10/06/ Dinamo π (NOME,COGOME) (CALCIATORI ) Nome Cognome Giuseppe Rossi Roberto Bianchi Michele Verdi Giovanni Bianchi π (ANNO) (CALCIATORI ) Anni

24 E possibile scrivere espressioni complesse componendo gli operatori algebrici CALCIATORI Nome Cognome Squadra Giuseppe Rossi Dinamo Roberto Bianchi Dinamo PRESIDENTI Nome Cognome Squadra Luciano Rossi Dinamo Michele Rosati Polisportiva Michele Verdi Polisportiva Nome Cognome Squadra σ SQUADRA=DINAMO (CALCIATORI PRESIDENTI ) Luciano Rossi Dinamo Giuseppe Rossi Dinamo Roberto Bianchi Dinamo

25 E possibile scrivere espressioni complesse componendo gli operatori algebrici CALCIATORI Nome Cognome Squadra Giuseppe Rossi Dinamo Roberto Bianchi Dinamo PRESIDENTI Nome Cognome Squadra Luciano Rossi Dinamo Michele Rosati Polisportiva Michele Verdi Polisportiva Π COGNOME (σ SQUADRA=DINAMO (CALCIATORI PRESIDENTI )) Cognome Rossi Bianchi

26 L operatore di join naturale consente di correlare dati tra relazioni diverse, sulla base di valori comuni in attributi comuni. CALCIATORI Nome Cognome Squadra Giuseppe Rossi Dinamo Roberto Bianchi Dinamo Michele Verdi Polisportiva SQUADRE Squadra Punti Dinamo 12 Polisportiva 14 Nome Cognome Squadra Punti CALCIATORI SQUADRE Giuseppe Rossi Dinamo 12 Roberto Bianchi Dinamo 12 Michele Verdi Polisportiva 14

27 L operatore di join naturale consente di correlare dati tra relazioni diverse, sulla base di valori comuni in attributi comuni. Data una relazione r 1 su attributi X 1, ed una relazione r 2 su attributi X 2 : r 1 r 2 = {t su X 1 X 2 t[x 1 ] r 1 t[x 2 ] r 2 } La cardinalita del join e compresa tra 0 e r 1 * r 2.

28 Se le due relazioni r 1 ed r 2 hanno lo stesso schema à la cardinalità del join è pari a quella dell interserzione tra r 1 ed r 2. IMPIEGATI Codice Nome Ufficio 123 Rossi A 345 Bianchi A 167 Verdi B RESPONSABILI_UFFICIO IMPIEGATI RESPONABILI _UFFICIO Codice Nome Ufficio 123 Rossi A Codice Nome Ufficio 123 Rossi A 345 Michele C CASO SPECIALE 1

29 Sia X l attributo in comune tra X 1 ed X 2. Se X contiene una chiave di r 2 à il join ha cardinalità massima pari alla cardinalità di r 1 ( r 1 ). IMPIEGATI SEDI Codice Nome Sede Sede Mansione 123 Rossi Bologna Bologna Sviluppo 345 Bianchi Milano Milano Testing 167 Verdi Milano CASO SPECIALE 2 IMPIEGATI SEDI Id Nome Sede Mansione 123 Rossi Bologna Sviluppo 345 Bianchi Milano Testing 167 Verdi Milano Testing

30 Sia X l attributo in comune tra X 1 ed X 2. Se esiste un vincolo di integrità referenziale tra l attributo X in r 1 e la relazione r 2 à il join ha cardinalità pari alla cardinalità di r 1 ( r1 ). REPARTI PAZIENTI Id Nome CodiceRep 123 Rossi A3 345 Bianchi A3 167 Verdi B1 CodiceRep NrLetti Primario A3 20 Alberti B1 10 Gigli CASO SPECIALE 3 Id Nome Codice NrLetti Primario Rep 123 Rossi A3 20 Alberti PAZIENTI REPARTI 345 Bianchi A3 20 Alberti 167 Verdi B1 10 Gigli

31 Se le due relazioni r 1 ed r 2 non hanno attributi in comune à la cardinalita del join è pari a quella del prodotto cartesiano tra r 1 ed r 2 ( r 1 * r 2 ). IMPIEGATI Id Nome Ufficio 123 Rossi A IMPIEGATI UFFICI CASO SPECIALE 4 Id Nome Ufficio Codice Telefono 345 Bianchi A 167 Verdi B UFFICI Codice Telefono A C Rossi A A Rossi A C Bianchi A A Bianchi A C Verdi B A Verdi B C

32 Il join naturale dispone di alcune proprietà algebriche interessanti: Il join è commutativo: Il join è associativo: Nel caso di join n-ari: Q. Dimostrazione? r 1 r 2 = r 2 r 1 (r 1 r 2 ) r 3 = r 1 (r 2 r 3 ) r 1.. r n = 1 n r i

33 E possibile stabilire una corrispondenza tra query SQL ed espressioni in algebra relazionale Schema generale (tralasciando le ridenominazioni) SELECT A 1, A 2, A n FROM T 1, T 2, T m WHERE Condizione Π A1 A 2..A n (σ Condizione (T 1 T 2... T m ))

34 Dato il seguente schema: IMPIEGATI(Codice, Nome, Cognome, Livello) STIPENDI (LivelloQualifica, Retribuzione) determinare la retribuzione degli impiegati che si chiamano Mario. SELECT RETRIBUZIONE FROM IMPIEGATI, STIPENDI WHERE ((NOME= MARIO ) AND (LIVELLO=LIVELLOQUALIFICA)) Π RETRIBUZIONE (σ NOME="MARIO" LIVELLO=LIVELLOQUALIFICA (IMPIEGATI STIPENDI ))

35 Dato il seguente schema: IMPIEGATI(Codice, Nome, Cognome, Livello) STIPENDI (LivelloQualifica, Retribuzione) determinare la retribuzione MEDIA degli impiegati che si chiamano Mario. SELECT AVG(RETRIBUZIONE) FROM IMPIEGATI, STIPENDI WHERE ((NOME= MARIO ) AND (LIVELLO=LIVELLOQUALIFICA)) In algebra relazionale? Non si può esprimere

36 Il theta-join è un operatore derivato, espresso come un join naturale seguito da un operatore di selezione. Theta-join: r 1 F r 2 = σ F (r 1 r 2 ) F è una condizione utilizzabile in una selezione. r 1 ed r 2 devono avere schemi diversi, ossia non devono avere attributi in comune.

37 Un esempio di theta-join con condizione di selezione (NrPosti>150). VOLI Codice Partenza Arrivo AZ123 Roma Parigi AF345 Milano Boston AF167 Parigi Londra AEREI Modello NrPosti Smoking B NO MD NO VOLI NRPOSTI >150 CODICE=MODELLO AEREI Codice Partenza Arrivo Modello NrPosti Smoking AZ123 Roma Parigi B NO AF345 Milano Boston B NO AF167 Parigi Londra B NO

38 L equi-join è un theta-join, in cui la condizione di selezione è una congiunzione di atomi di uguaglianza. Equi-join: r 1 F r 2 = σ F (r 1 r 2 ) F è una congiunzione di atomi. F = C 1 C 2...C n Ogni atomo è un uguaglianza, tra due attributi (A,B) oppure tra un attributo ed una costante (d) nel suo dominio. C = (A = d) (A = B)

39 Esempio di equi-join VOLI Codice Partenza Arrivo Modello AZ123 Roma Parigi B747 AF345 Milano Boston MD80 AF167 Parigi Londra B737 AEREI Codice NrPosti Smoking B NO MD NO VOLI MODELLO=CODICE AEREI Codice Partenza Arrivo Modello NrPosti Smoking AZ123 Roma Parigi B NO AF345 Milano Boston MD NO

40 Il join naturale di tue relazioni r 1 ed r 2 può essere espresso mediante gli operatori di selezione, equijoin e ridenominazione. Es. date 2 relazioni: r 1 (ABC), r 2 (BCD) Step1: Ridenominazione Step2: Equi-join Step3: Proiezione ρ B'C'< B,C (r 2 ) r 1 B=B' C=C' ρ B'C'< B,C (r 2 ) Π ABCD (r 1 B=B' C=C' ρ B'C'< B,C (r 2 ))

41 Come in SQL, è possibile definire delle viste, sotto forma di interrogazioni dell algebra relazionale cui si assegna un nome. L e v i s t e p o s s o n o e s s e r e u s a t e i n a l t r e interrogazioni, per semplificarne la scrittura. Esempio di vista con nome IMPIEGATI IMPIEGATI = σ SEDE=BOLOGNA (IMPIEGATI SEDI )

42 L algebra relazionale consente di creare interrogazioni equivalenti tra loro. L equivalenza puo essere: Dipendente dallo schema E 1 R E 2 à Se E 1 =E 2 per ogni istanza r dello schema R Assoluta (per ogni schema) E 1 E 2 se E 1 R E 2 per ogni schema R

43 Esempio di uguaglianza dipendente dallo schema Π AB (R 1 ) Π AC (R 2 ) R Π ABC (R 1 R 2 ) Es. L uguaglianza funziona sullo schema seguente: R 1 =VOLI(Codice, AeroportoArrivo, OraArrivo, OraPartenza, Vettore) R 2 =AEREI(Vettore, NumPasseggeri) Ma che accade se le due relazioni coinvolte hanno altri attributi in comune oltre a quelli che compaiono in A?

44 STUDENTI Matricola Nome Cognome CdL Marco Rossi Fisica Michele Bianchi Informatica Giovanna Verdi Chimica Daniele Rosati Fisica ANAGRAFICA Nome Cognome CF Data Michele Rossi MR233G 03/01/1990 Michele Marchi MM768H 06/11/1992 Giovanna Verdi GV1111J 05/11/1993 Giovanna Bianchini GB3133J 23/06/1988 Π NOME,CdL (STUDENTI ) Π NOME,DATA (ANAGRAFICA) Nome CdL Data Michele Informatica 03/01/1990 Michele Informatica 06/11/1992 Giovanna Chimica 05/11/1993 Giovanna Π NOME,CdL,DATA (STUDENTI ANAGRAFICA) Nome CdL Data Chimica 05/11/1993 Giovanna Fisica 23/06/1988

45 Uguaglianze a livello di schema Atomizzazione delle selezioni: Idempotenza delle proiezioni: Selezione anticipata: (F fa riferimento solo ad attributi di E 2 ) Inglobamento di una selezione: σ F1 F 2 (E) = σ F1 (σ F 2 (E)) Π X (E) = Π X (Π XY (E)) σ F (E 1 E 2 ) = E 1 σ F (E 2 ) σ F (E 1 E 2 ) = E 1 F E 2

46 Uguaglianze a livello di schema (continua) Commutatività della selezione: (F deve riferirsi solo ad attributi in Y) Commutatività del join: Associtatività del join: σ F (Π Y (E)) = Π Y (σ F (E)) E 1 E 2 = E 2 E 1 (E 1 E 2 ) E 3 = E 1 (E 2 E 3 )

47 Uguaglianze a livello di schema (continua) Proiezione anticipata: Π X1Y2 (E 1 E 2 ) = E 1 Π Y2 (E 2 ) (E 1 ed E 2 definite su X 1 ed X 2. Y 2 deve contenere l intersezione di X 1 ed X 2.) Proprieta distributive della selezione e proiezione: σ F (A B) = σ F (A) σ F (B) σ F (A B) = σ F (A) σ F (B) Π F (A B) = Π F A Π F (B)

48 Q. Come si dimostra se un uguaglianza a livello di schema è valida? Verificare l opposto è facile à Basta trovare un esempio (schema/istanza) su cui l uguaglianza non vale Π A (E 1 F E 2 ) = Π A (E 1 ) F Π A (E 2 ) Se non ci sono assunzioni sulla struttura di E 1, E 2, ed A, l uguaglianza sopra è FALSA à CONTROESEMPIO: E1=IMPIEGATI(Codice, Stipendio, Sede) E2=SEDI(Citta, Mansione) A=Stipendio F: (Sede=Citta)

49 Q. Come si dimostra se un uguaglianza a livello di schema è valida? Es. Dimostrare che: SCHEMA DI DIMOSTRAZIONE 1) Occorre dimostrare che: 2) Occorre dimostrare che: σ F1 F 2 (E) = σ F1 (σ F 2 (E)) se t σ F1 (σ F 2 (E)) t σ F1 F 2 (E) se t σ F1 F 2 (E) t σ F1 (σ F 2 (E))

50 Esempio di ottimizzazione di query Dato il seguenti schema: VOLI(Codice, CittaPartenza, CittaArrivo, Vettore) AEREI(Modello, NrPosti, Smoking) Q. Determinare i modelli degli aerei in partenza da Milano con meno di 100 passeggeri. Π MODELLO (σ MODELLO=VETTORE CITTAPART=MILANO NRPOSTI <100 (VOLI AEREI ))

51 Esempio di ottimizzazione di query 1. Atomizzazione delle selezioni. Π MODELLO (σ MODELLO=VETTORE (σ CITTAPART=MILANO (σ NRPOSTI <100 (VOLI AEREI )))) 2. Anticipazione della selezione rispetto al join Π MODELLO (σ MODELLO=VETTORE ((σ CITTAPART=MILANO (VOLI ) (σ NRPOSTI <150 AEREI )))) 3. Inglobamento della selezione nel join Π MODELLO ((σ CITTAPART=MILANO (VOLI ) MODELLO=VETTORE (σ NRPOSTI <150 AEREI )))

52 Esempio di ottimizzazione di query 4. Anticipazione della proiezione. Π MODELLO (((Π MODELLO (σ CITTAPART=MILANO (VOLI ))) MODELLO=VETTORE (Π VETTORE (σ NRPOSTI <150 AEREI ))))) Π MODELLO (σ MODELLO=VETTORE CITTAPART=MILANO NRPOSTI <100 (VOLI AEREI )) Q. E possibile ottimizzare ulteriormente l interrogazione?

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

Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.

Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo. PROBLEMA. Un albergo di una grande città intende gestire in modo automatizzato sia le prenotazioni sia i soggiorni e realizzare un database. Ogni cliente viene individuato, tra l altro, con i dati anagrafici,

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

Programmazione Dichiarativa. Programmazione Logica. SICStus PROLOG PROLOG. http://www.sics.se/sicstus/ Bob Kowalski: "Algoritmo = Logica + Controllo"

Programmazione Dichiarativa. Programmazione Logica. SICStus PROLOG PROLOG. http://www.sics.se/sicstus/ Bob Kowalski: Algoritmo = Logica + Controllo Programmazione Logica Bob Kowalski: "Algoritmo = Logica + Controllo" nella programmazione tradizionale: il programmatore deve occuparsi di entrambi gli aspetti nella programmazione dichiarativa: il programmatore

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

Esempio di database relazionale con l utilizzo del prodotto MySQL

Esempio di database relazionale con l utilizzo del prodotto MySQL Esempio di database relazionale con l utilizzo del prodotto MySQL Marco Liverani Aprile 2015 In queste pagine viene riportato in sintesi il progetto di un database relazionale esemplificativo con cui viene

Dettagli

Introduzione. Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei

Introduzione. Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei Introduzione Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei. ESEMPI DI INSIEMI DI DATI DA ORGANIZZARE ED USARE IN MANIERA EFFICIENTE Introduzione Più utenti con

Dettagli

Esame di Informatica Generale 25 giugno 2010 Professori: Carulli, Fiorino, Mazzei

Esame di Informatica Generale 25 giugno 2010 Professori: Carulli, Fiorino, Mazzei IG 9CFU 25/06/10 1/12 Esame di Informatica Generale 25 giugno 2010 Professori: Carulli, Fiorino, Mazzei Docente Risultati Scritto Orali Fiorino martedi venerdì Mazzei Martedì pv (sito docente) Mercoledì

Dettagli

Università degli Studi di Milano. Esercizi Corso SIT. Basi di dati

Università degli Studi di Milano. Esercizi Corso SIT. Basi di dati Università degli Studi di Milano Esercizi Corso SIT Basi di dati Maria Luisa Damiani (con la collaborazione degli studenti: Giulia Izzi e ) 2010-2011-2012 ESERCIZI CORSO SIT parte BASE DI DATI TABELLE

Dettagli

ALGEBRA RELAZIONALE RIEPILOGO

ALGEBRA RELAZIONALE RIEPILOGO ALGEBRA RELAZIONALE RIEPILOGO PROIEZIONE: (notazione ) Operatore unario per estrarre colonne da una relazione: lista_attributi (R) Lo schema del risultato contiene i soli attributi contenuti in lista_attributi.

Dettagli

Si considerino le seguenti specifiche per la realizzazione di un sito web per la gestione di abbonamenti a riviste di vario genere..

Si considerino le seguenti specifiche per la realizzazione di un sito web per la gestione di abbonamenti a riviste di vario genere.. 16 Luglio 2014 : Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche per la realizzazione di un sito web per la gestione di abbonamenti a riviste di vario genere.. Si vuole realizzare

Dettagli

Riconoscere e formalizzare le dipendenze funzionali

Riconoscere e formalizzare le dipendenze funzionali Riconoscere e formalizzare le dipendenze funzionali Giorgio Ghelli 25 ottobre 2007 1 Riconoscere e formalizzare le dipendenze funzionali Non sempre è facile indiduare le dipendenze funzionali espresse

Dettagli

Archivi e Basi di Dati

Archivi e Basi di Dati Archivi e Basi di Dati A B C File Programma 1 Programma 2 A B C File modificati Programma 1 DBMS DB Programma 2 Informatica Generale (CdL in E&C), A.A. 2000-2001 55 Problemi nella gestione di archivi separati

Dettagli

Gli operatori relazionali

Gli operatori relazionali Gli operatori relazionali Agiscono su una o più relazioni per ottenere una nuova relazione (servono a realizzare le interrogazioni sul database) Ci sono tre operazioni fondamentali per i database relazionali:

Dettagli

DATABASE PER IL WEB. Programmazione Web 1

DATABASE PER IL WEB. Programmazione Web 1 DATABASE PER IL WEB Programmazione Web 1 Archite3ura web con database Client Tier Web/App Tier DB Tier Client Web / App Server Database Il server web comunica con un altro server che con8ene il la banca

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

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

TEORIA RELAZIONALE: INTRODUZIONE

TEORIA RELAZIONALE: INTRODUZIONE TEORIA RELAZIONALE: INTRODUZIONE Tre metodi per produrre uno schema relazionale: a) Partire da un buon schema a oggetti e tradurlo b) Costruire direttamente le relazioni e poi correggere quelle che presentano

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

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 28 Giugno 05 Nome: Cognome: Matricola: Esercizio 1

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 28 Giugno 05 Nome: Cognome: Matricola: Esercizio 1 Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 28 Giugno 05 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione del sistema informativo di

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

Basi di Dati e Sistemi Informativi. Algebra Relazionale

Basi di Dati e Sistemi Informativi. Algebra Relazionale Basi di Dati e Sistemi Informativi Algebra Relazionale Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale Introduzione L algebra relazionale è un linguaggio procedurale: le operazioni vengono

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

ESERCIZIO 1 (12 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad una Software (SW) House:

ESERCIZIO 1 (12 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad una Software (SW) House: NOME COGNOME MATRICOLA ESERCIZIO 1 (12 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad una Software (SW) House: SVILUPPATORE(Codice, Nome, Cognome, AnnoNascita) PROGETTO_SW(Nome,

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

Lezione V. Aula Multimediale - sabato 29/03/2008

Lezione V. Aula Multimediale - sabato 29/03/2008 Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)

Dettagli

COGNOME MATRICOLA. UTENTE(ID, Nome, Cognome, Eta) ALBERGO(Nome, Citta, NumStelle) PRENOTAZIONE(Codice, NomeAlbergo, IDUtente, DataArrivo, NumNotti)

COGNOME MATRICOLA. UTENTE(ID, Nome, Cognome, Eta) ALBERGO(Nome, Citta, NumStelle) PRENOTAZIONE(Codice, NomeAlbergo, IDUtente, DataArrivo, NumNotti) NOME COGNOME MATRICOLA ESERCIZIO 1 (12 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad un servizio di prenotazione di strutture alberghiere: UTENTE(ID, Nome, Cognome,

Dettagli

Corso di Basi di Dati. Linguaggi per basi di dati. Linguaggi per basi di dati. Linguaggi per basi di dati: Algebra Relazionale

Corso di Basi di Dati. Linguaggi per basi di dati. Linguaggi per basi di dati. Linguaggi per basi di dati: Algebra Relazionale Corso di Basi di Dati Linguaggi per basi di dati: lgebra Relazionale Donatella Gubiani Linguaggi per basi di dati Si possono distinguere diversi tipi di linguaggi per la gestione dei dati: Linguaggio di

Dettagli

PROGRAMMA DI CLASSE 5AI

PROGRAMMA DI CLASSE 5AI Istituto di Istruzione Superiore Euganeo Istituto tecnico del settore tecnologico Istituto professionale del settore servizi socio-sanitari Istituto professionale del settore industria e artigianato PROGRAMMA

Dettagli

SQL: concetti base SQL. Definizione dei dati in SQL. SQL: "storia"

SQL: concetti base SQL. Definizione dei dati in SQL. SQL: storia SQL SQL: concetti base originariamente "Structured Query Language", ora "nome proprio" linguaggio con varie funzionalità: contiene sia il DDL sia il DML ne esistono varie versioni vediamo gli aspetti essenziali,

Dettagli

BASE DI DATI: sicurezza. Informatica febbraio 2015 5ASA

BASE DI DATI: sicurezza. Informatica febbraio 2015 5ASA BASE DI DATI: sicurezza Informatica febbraio 2015 5ASA Argomenti Privatezza o riservatezza Vincoli di integrità logica della base di dati intrarelazionali interrelazionali Principio generale sulla sicurezza

Dettagli

INTRODUZIONE ALLE BASI DATI RELAZIONALI

INTRODUZIONE ALLE BASI DATI RELAZIONALI INTRODUZIONE ALLE BASI DATI RELAZIONALI RELAZIONI E TABELLE Nelle BASI DI DATI RELAZIONALI le informazioni sono organizzate in TABELLE; Le tabelle sono rappresentate mediante griglie suddivise in RIGHE

Dettagli

(anno accademico 2008-09)

(anno accademico 2008-09) Calcolo relazionale Prof Alberto Belussi Prof. Alberto Belussi (anno accademico 2008-09) Calcolo relazionale E un linguaggio di interrogazione o e dichiarativo: at specifica le proprietà del risultato

Dettagli

Il Modello Relazionale (1)

Il Modello Relazionale (1) Il Modello Relazionale (1) Il modello relazionale, sebbene non sia stato il modello usato nei primi DBMS, è divenuto lentamente il modello più importante al punto che è oggi comunemente usato in tutti

Dettagli

Basi di dati. Una visione d insieme. Classificazione. Linguaggi di interrogazione. Algebra relazionale. selezione σ

Basi di dati. Una visione d insieme. Classificazione. Linguaggi di interrogazione. Algebra relazionale. selezione σ a linguaggi formali Classificazione Basi di dati Linguaggi di interrogazione Docente: tefano Paraboschi parabosc@elet.polimi.it Algebra relazionale Calcolo relazionale Programmazione logica b linguaggi

Dettagli

RELAZIONI BINARIE. Proprietà delle relazioni Data una relazione R, definita in un insieme non vuoto U, si hanno le seguenti proprietà :

RELAZIONI BINARIE. Proprietà delle relazioni Data una relazione R, definita in un insieme non vuoto U, si hanno le seguenti proprietà : RELAZIONI INARIE Dati due insiemi non vuoti, A detto dominio e detto codominio, eventualmente coincidenti, si chiama relazione binaria (o corrispondenza) di A in, e si indica con f : A, (oppure R ) una

Dettagli

Basi di Dati Corso di Laura in Informatica Umanistica

Basi di Dati Corso di Laura in Informatica Umanistica Basi di Dati Corso di Laura in Informatica Umanistica Appello del 10/09/2010 Parte 1: Algebra Relazionale e linguaggio SQL Docente: Giuseppe Amato Sia dato il seguente schema di base di dati per la gestione

Dettagli

Corso di Laboratorio di Basi di Dati

Corso di Laboratorio di Basi di Dati Corso di Laboratorio di Basi di Dati F1I072 - INF/01 a.a 2009/2010 Pierluigi Pierini Technolabs S.p.a. Pierluigi.Pierini@technolabs.it Università degli Studi di L Aquila Dipartimento di Informatica Technolabs

Dettagli

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

Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi Query (Interrogazioni) Ultima modifica: 5/4/2012 SQL Materiale aggiuntivo per il corso di laurea in Lingue e Culture per il Turismo classe L-15! È necessario un modo per interrogare le basi di dati, cioè

Dettagli

Corso di Basi di Dati

Corso di Basi di Dati Corso di Basi di Dati Esercitazione: L algebra relazionale Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/ Esercizio 1 Ø Dato il seguente schema: POETA(Nome, Cognome, AnnoNascita, LuogoNascita)

Dettagli

Traduzione dello schema E-R in modello logico relazionale

Traduzione dello schema E-R in modello logico relazionale Traduzione dello schema E-R in modello logico relazionale 1 2 Entità con identificatore esterno - Esempio Risoluzione delle entità con identificatore esterno 3 4 5 Traduzioni dal modello E-R al modello

Dettagli

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

Calcolo Relazionale Basi di dati e sistemi informativi 1. Calcolo Relazionale. Angelo Montanari

Calcolo Relazionale Basi di dati e sistemi informativi 1. Calcolo Relazionale. Angelo Montanari Calcolo Relazionale Basi di dati e sistemi informativi 1 Calcolo Relazionale Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Calcolo Relazionale Basi di dati e sistemi informativi

Dettagli

Modello Relazionale. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto san giovanni

Modello Relazionale. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto san giovanni Modello Relazionale Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto san giovanni Cronologia dei modelli per la rappresentazione dei dati Modello gerarchico (anni 60) Modello reticolare

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

Basi di Dati. Programmazione e gestione di sistemi telematici

Basi di Dati. Programmazione e gestione di sistemi telematici Basi di Dati. Programmazione e gestione di sistemi telematici Coordinatore: Prof. Paolo Nesi Docenti: Prof. Paolo Nesi Dr.sa Michela Paolucci Dr. Emanuele Bellini SQL SQL = Structured Query Language Linguaggio

Dettagli

Vincoli di integrità

Vincoli di integrità Vincoli di integrità Non tutte le istanze di basi di dati sintatticamente corrette rappresentano informazioni plausibili per l applicazione di interesse Studenti Matricola Nome Nascita 276545 Rossi 23-04-72?

Dettagli

N ORE LEZIONI FRONTALI: STUDIO INDIVIDUALE ( ) N ORE ESERCITAZIONI/LABORATORIO: STUDIO INDIVIDUALE ( )

N ORE LEZIONI FRONTALI: STUDIO INDIVIDUALE ( ) N ORE ESERCITAZIONI/LABORATORIO: STUDIO INDIVIDUALE ( ) Invia modulo Basi di Dati + Laboratorio INSEGNAMENTO 214-215 ANNO ACCADEMICO Informatica Triennale sede di Brindisi CORSO DI LAUREA IN Paolo Buono DOCENTE 2 1 ANNO DI CORSO SEMESTRE 7 N CREDITI LEZIONI

Dettagli

LICEO SCIENTIFICO "LEONARDO DA VINCI" - RC PROGRAMMA DI INFORMATICA A.S. 2014/15 - CLASSE: I Q - Indirizzo Scienze applicate Prof Miritello Rita

LICEO SCIENTIFICO LEONARDO DA VINCI - RC PROGRAMMA DI INFORMATICA A.S. 2014/15 - CLASSE: I Q - Indirizzo Scienze applicate Prof Miritello Rita LICEO SCIENTIFICO "LEONARDO DA VINCI" - RC PROGRAMMA DI INFORMATICA A.S. 2014/15 - CLASSE: I Q - Indirizzo Scienze applicate Modulo 1: Introduzione all informatica Fondamenti di teoria della elaborazione

Dettagli

Elena Baralis 2013 Politecnico di Torino 1

Elena Baralis 2013 Politecnico di Torino 1 Modello relazionale Docente M2170 Fondamenti di informatica Verdi M4880 Sistemi di elaborazione Bianchi F0410 Basi di dati Neri Docenti Nome Dipartimento Telefono Verdi Informatica 123456 Bianchi Elettronica

Dettagli

ESERCIZIO 1 (15 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad un sistema di prenotazioni di biglietti aerei:

ESERCIZIO 1 (15 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad un sistema di prenotazioni di biglietti aerei: NOME COGNOME MATRICOLA ESERCIZIO 1 (15 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad un sistema di prenotazioni di biglietti aerei: VELIVOLO(NomeModello, MaxPasseggeri)

Dettagli

Politecnico di Milano - Facoltà di Ingegneria INFORMATICA A - Corso per allievi GESTIONALI - Prof. C. SILVANO A. A. 2001/2002-5 febbraio 2003 -A

Politecnico di Milano - Facoltà di Ingegneria INFORMATICA A - Corso per allievi GESTIONALI - Prof. C. SILVANO A. A. 2001/2002-5 febbraio 2003 -A Politecnico di Milano - Facoltà di Ingegneria INFORMATICA A - Corso per allievi GESTIONALI - Prof. C. SILVANO A. A. 2001/2002-5 febbraio 2003 -A COGNOME: NOME: MATRICOLA: Istruzioni: Scrivere solo sui

Dettagli

BASI DI DATI LINGUAGGI PER BASI DI DATI

BASI DI DATI LINGUAGGI PER BASI DI DATI BASI DI DATI LINGUAGGI PER BASI DI DATI Pof. Fabio A. Scheibe Dipatimento di Elettonica e Infomazione Politecnico di Milano tatto da: Atzeni, Cei, Paaboschi, Tolone - Basi di Dati - McGaw-Hill CLASSIFICAZIONE

Dettagli

Basi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati

Basi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati Basi di dati Il Modello Relazionale dei Dati Proposto da E. Codd nel 1970 per favorire l indipendenza dei dati Disponibile come modello logico in DBMS reali nel 1981 (non è facile realizzare l indipendenza

Dettagli

Il Modello Relazionale

Il Modello Relazionale Il Modello Relazionale Il modello relazionale 1 Il modello relazionale Proposto da E. F. Codd nel 1970 per favorire l indipendenza dei dati e reso disponibile come modello logico in DBMS reali nel 1981

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 2 Raffaella Gentilini 1 / 45 Sommario 1 Il DDL di SQL: Cancellazione ed Aggiornamento di una BD Cancellazione di Schemi, Tabelle, e Domini Aggiornamento di Tabelle

Dettagli

SQL prima 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 2011/12

SQL prima 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 2011/12 SQL prima 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 2011/12 DEFINIZIONE Il concetto di vista 2 È una relazione derivata. Si specifica l espressione che genera il suo contenuto.

Dettagli

MAX, SUM, AVG, COUNT)

MAX, SUM, AVG, COUNT) INTRODUZIONE A SQL Definizione di tabelle e domini Alcuni vincoli di integrità Struttura base SELECT FROM WHERE Funzioni di aggregazione (MIN, MAX, SUM, AVG, COUNT) Query da più tabelle (FROM R1, Rk) Join

Dettagli

MODELLO RELAZIONALE. cesarini-bdsi mod relazionale 1 MODELLO RELAZIONALE

MODELLO RELAZIONALE. cesarini-bdsi mod relazionale 1 MODELLO RELAZIONALE MODELLO RELAZIONALE Definizione di relazione Schema e istanza Chiave Valori nulli Predicati e vincoli di integrità Vincolo di integrità referenziale cesarini-bdsi mod relazionale 1 MODELLO RELAZIONALE

Dettagli

Esercizio 4.1. Soluzione:

Esercizio 4.1. Soluzione: Capitolo 4 Esercizio 4.1 Ordinare i seguenti domini in base al valore massimo rappresentable, supponendo che integer abbia una rappresentazione a 32 bit e smallint a 16 bit: numeric(12,4), decimal(10),

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 : (1) Interrogazioni semplici INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione

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

INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro) ESERCIZIO 3

INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro) ESERCIZIO 3 INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro) ESERCIZIO 3 L azienda Plastic S.p.A, operante nel settore materie plastiche, ha deciso di dotarsi di un Sistema Informativo per la gestione del suo

Dettagli

BASI DATI INFORMATICA

BASI DATI INFORMATICA BASI DATI INFORMATICA 1 Sistema Informativo Un sistema informativo (SI) è un componente di una organizzazione il cui obiettivo è gestire le informazioni utili per gli scopi dell organizzazione stessa GESTIRE

Dettagli

Il linguaggio SQL: viste e tabelle derivate

Il linguaggio SQL: viste e tabelle derivate Il linguaggio SQL: viste e tabelle derivate Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SQLd-viste.pdf Sistemi Informativi L-A DB di riferimento

Dettagli

Il linguaggio SQL: DDL di base

Il linguaggio SQL: DDL di base Il linguaggio SQL: DDL di base Sistemi Informativi T Versione elettronica: 04.1.SQL.DDLbase.pdf SQL: caratteristiche generali SQL (Structured Query Language) èil linguaggio standard de facto per DBMS relazionali,

Dettagli

COGNOME MATRICOLA. Con vincoli di integrita referenziale: INTERVENTO.CodTecnico à TECNICO.Codice INTERVENTO.MatCaldaia à CALDAIA.

COGNOME MATRICOLA. Con vincoli di integrita referenziale: INTERVENTO.CodTecnico à TECNICO.Codice INTERVENTO.MatCaldaia à CALDAIA. NOME COGNOME MATRICOLA ESERCIZIO 1 (15 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad un azienda che fornisce assistenza caldaie a domicilio: TECNICO(Codice, Nome,

Dettagli

Il linguaggio SQL: viste e tabelle derivate. Versione elettronica: SQLd-viste.pdf

Il linguaggio SQL: viste e tabelle derivate. Versione elettronica: SQLd-viste.pdf Il linguaggio SQL: viste e tabelle derivate Versione elettronica: SQLd-viste.pdf DB di riferimento per gli esempi Imp Sedi CodImp Nome Sede Ruolo Stipendio Sede Responsabile Citta E001 Rossi S01 Analista

Dettagli

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1 Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1 Si consideri il seguente schema di base di dati che vuole tenere traccia delle attività di un autofficina. MECCANICO (CodiceFiscale,

Dettagli

Attributi e domini. A per {A}; XY per X Y (pertanto A 1 A 2 A 3 denota

Attributi e domini. A per {A}; XY per X Y (pertanto A 1 A 2 A 3 denota Attributi e domini Assumiamo un universo infinito numerabile U = {A 0, A 1, A 2...} di attributi. Denotiamo gli attributi con A, B, C, B 1, C 1... e gli insiemi di attributi con X, Y, Z, X 1,... per brevità

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

Basi di Dati e Sistemi Informativi. Progettazione logica: Il modello relazionale

Basi di Dati e Sistemi Informativi. Progettazione logica: Il modello relazionale Basi di Dati e Sistemi Informativi Progettazione logica: Il modello relazionale Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale Introduzione Basato sul lavoro di Codd (~1970) E attualmente

Dettagli

Basi di Dati Relazionali

Basi di Dati Relazionali Corso di Laurea in Informatica Basi di Dati Relazionali a.a. 2009-2010 Laboratorio Ing. G. Laboccetta Dott.ssa. V. Policicchio Coadiutore: Dott.ssa D. Nicotera PROGETTAZIONE FISICA SQL-DDL OBIETTIVO: Rappresentare

Dettagli

Basi di dati II prova intermedia 16 Marzo 2006 Compito 1

Basi di dati II prova intermedia 16 Marzo 2006 Compito 1 , Cognome, Matricola: Basi di dati II prova intermedia 16 Marzo 2006 Compito 1 Esercizio Si progetti la base di dati che rispetta le seguenti specifiche. E richiesto di produrre il diagramma

Dettagli

SQL. Definizione dei da6 in SQL. SQL: "storia" CREATE TABLE: esempio. CREATE TABLE: esempio

SQL. Definizione dei da6 in SQL. SQL: storia CREATE TABLE: esempio. CREATE TABLE: esempio SQL Atzeni, Ceri, Paraboschi, Torlone Basi di da6 Originariamente Structured Query Language, ora "nome proprio" Linguaggio con varie funzionalità: DDL Data Defini6on Language (insieme di comandi per la

Dettagli

Laboratorio di Basi di Dati

Laboratorio di Basi di Dati Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 10 Architettura Model-View-Controller (MVC) L'architettura MVC può essere applicata anche alla tecnologia PHP secondo diversi approcci. In questa

Dettagli

Il linguaggio SQL: le basi

Il linguaggio SQL: le basi Il linguaggio SQL: le basi Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SQLa-basi.pdf Sistemi Informativi L-A SQL: caratteristiche generali

Dettagli

Compito Basi di Dati. Tempo concesso: 90 minuti 08 Giugno 2006 Nome: Cognome: Matricola:

Compito Basi di Dati. Tempo concesso: 90 minuti 08 Giugno 2006 Nome: Cognome: Matricola: Compito Basi di Dati. Tempo concesso: 90 minuti 08 Giugno 2006 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione di un sistema di gestione di uno studio

Dettagli

I Sistemi Informativi

I Sistemi Informativi I Sistemi Informativi Definizione Un Sistema Informativo è un mezzo per acquisire, organizzare, correlare, elaborare e distribuire le informazioni che riguardano una realtà che si desidera descrivere e

Dettagli

Teoria della Progettazione delle Basi di Dati Relazionali

Teoria della Progettazione delle Basi di Dati Relazionali Teoria della Progettazione delle Basi di Dati Relazionali Complementi di Basi di Dati 1 Teoria della Progettazione delle Basi di Dati Relazionali Angelo Montanari Dipartimento di Matematica e Informatica

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 6: Potenza espressiva del calcolo Calcolo su domini, discussione Pregi: dichiaratività Difetti: "verbosità": tante variabili! espressioni

Dettagli

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 23 Settembre 03 Nome: Cognome: Matricola:

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 23 Settembre 03 Nome: Cognome: Matricola: 23 Settembre 03 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione della base dati di un villaggio vacanze e si definisca il relativo schema E/R (nella

Dettagli

a.a. 2012/13 12 Novembre 2012 Preparazione al Test in itinere, Compito A 1. Modellare tramite uno schema entità- relazione la seguente base di dati:

a.a. 2012/13 12 Novembre 2012 Preparazione al Test in itinere, Compito A 1. Modellare tramite uno schema entità- relazione la seguente base di dati: Gestione dei dati e della conoscenza, a.a. 2012/13 12 Novembre 2012 Preparazione al Test in itinere, Compito A 1. Modellare tramite uno schema entità- relazione la seguente base di dati: Si vuole modellare

Dettagli

Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica.

Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica. Progettazione logica Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica. La progettazione logica è basata su un particolare modello logico dei

Dettagli

DATABASE RELAZIONALI

DATABASE RELAZIONALI 1 di 54 UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II DIPARTIMENTO DI DISCIPLINE STORICHE ETTORE LEPORE DATABASE RELAZIONALI Dott. Simone Sammartino Istituto per l Ambiente l Marino Costiero I.A.M.C. C.N.R.

Dettagli

Basi di Dati. Laboratorio Ing. G. Laboccetta Dott.ssa. V. Policicchio. Corso di Laurea in Informatica. a.a. 2010-2011

Basi di Dati. Laboratorio Ing. G. Laboccetta Dott.ssa. V. Policicchio. Corso di Laurea in Informatica. a.a. 2010-2011 Corso di Laurea in Informatica Basi di Dati a.a. 2010-2011 Laboratorio Ing. G. Laboccetta Dott.ssa. V. Policicchio PROGETTAZIONE FISICA SQL-DDL OBIETTIVO: Rappresentare i dati della realtà di interesse

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

Normalizzazione. Relazionali

Normalizzazione. Relazionali Normalizzazione di Schemi Relazionali Normalizzazione Forme Normali Una forma normale è una proprietà di uno schema relazionale che ne garantisce la qualità, cioè l assenza di determinati difetti Una relazione

Dettagli

Definizione di domini

Definizione di domini Definizione di domini Come nei linguaggi ad alto livello (es. C) è possibile definire nuovi domini (tipi di dati) a partire da quelli predefiniti, anche se il costruttore è più limitato. create domain

Dettagli

DATA BASE MANAGEMENT SYSTEM

DATA BASE MANAGEMENT SYSTEM DATA BASE (1) Problematica gestione dati: oggetti delle elaborazioni, difficili da gestire, memorizzare, reperire, modificare; talvolta ridondanti/incongruenti; non sufficientemente protetti; spesso comuni

Dettagli

PRESTITO (Titolo, Nome, DataRestituzione)

PRESTITO (Titolo, Nome, DataRestituzione) Capitolo 2 Esercizio 2.1 Considerare le informazioni per la gestione dei prestiti di una biblioteca personale. Il proprietario presta libri ai suoi amici, che indica semplicemente attraverso i rispettivi

Dettagli

Le basi di dati. Base di dati. Modelli, schemi ed istanze DBMS. Architettura ANSI/SPARC: schemi

Le basi di dati. Base di dati. Modelli, schemi ed istanze DBMS. Architettura ANSI/SPARC: schemi Base di dati Le basi di dati Definizioni Modello relazionale e SQL E una collezione di dati utilizzata per rappresentare le informazioni di interesse in un sistema informativo I dati hanno vita più lunga

Dettagli

Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE

Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE Andrea Bobbio Anno Accademico 2000-2001 Algebra Booleana 2 Calcolatore come rete logica Il calcolatore può essere visto come una rete logica

Dettagli

La in verifica forma teoria normale della normalizzazione fornisce comunque uno strumento di già

La in verifica forma teoria normale della normalizzazione fornisce comunque uno strumento di già Le dati Presenza Complicazioni forme relazionale normaliverificano di ridondanze la qualitàdi uno schema di una base di Forme La forma normalizzazionepermette nella gestione di degli ottenere aggiornamenti

Dettagli

CAPITOLO 4 ESERCIZI SU SQL

CAPITOLO 4 ESERCIZI SU SQL CAPITOLO 4 ESERCIZI SU SQL (le soluzioni sono riportate da pag. 5 in poi (Nota: gli esercizi non sono sempre in ordine di difficoltà Esercizio 1 Si prendano tutti gli schemi relazionali considerati negli

Dettagli

Sistemi di Elaborazione delle Informazioni (C.I. 15) Access

Sistemi di Elaborazione delle Informazioni (C.I. 15) Access 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 Access C.d.L. in Igiene

Dettagli

Cap. 1-I 1 I sistemi informatici

Cap. 1-I 1 I sistemi informatici Libro di testo A. Chianese,V. Moscato, A. Picariello, L. Sansone Basi di dati per la gestione dell informazione McGraw-Hill Hill,, 2007 Ricevimento studenti Lunedì ore 11-13 Didattica su web Si interagisce

Dettagli

Capitolo 9. Esercizio 9.1. Esercizio 9.2

Capitolo 9. Esercizio 9.1. Esercizio 9.2 Capitolo 9 Esercizio 9.1 Considerare lo relazione in figura 9.19 e individuare le proprietà della corrispondente applicazione. Individuare inoltre eventuali ridondanze e anomalie nella relazione. Docente

Dettagli

Dal modello concettuale al modello logico

Dal modello concettuale al modello logico Dal modello concettuale al modello logico Traduzione dal modello Entita - Associazione al modello Relazionale Ciclo di sviluppo di una base di dati (da parte dell utente) Analisi dello scenario Modello

Dettagli

Uso delle variabili di alias. SQL slide aggiuntive. Interrogazione 25. Interrogazione 26

Uso delle variabili di alias. SQL slide aggiuntive. Interrogazione 25. Interrogazione 26 Uso delle variabili di alias SQL slide aggiuntive Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione educazione Non solo per disambiguare la notazione

Dettagli