BASI DI DATI LINGUAGGI PER BASI DI DATI
|
|
- Oreste Spada
- 8 anni fa
- Visualizzazioni
Transcript
1 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 DEI LINGUAGGI LINGUAGGI FORMALI ALGEBRA RELAZIONALE CALCOLO RELAZIONALE DELLE TUPLE DEI DOMINII PROGRAMMAZIONE LOGICA LINGUAGGI PROGRAMMATIVI SQL (Stuctued Quey Language) QBE (Quey By Example)... Fabio A. Scheibe Linguaggi pe DB 1 1
2 CLASSIFICAZIONE DEI LINGUAGGI LINGUAGGI PROCEDURALI SERVONO PER PRESCRIVERE IL PROCESSO ALGORITMICO MEDIANTE IL QUALE VIENE SODDISFATTA LA RICHIESTA (cosa e come) LINGUAGGI NON PROCEDURALI SERVONO PER DESCRIVERE LA FORMULAZIONE DEL RISULTATO (cosa) UN INTERPRETE SI INCARICA DI TROVARE IL MODO MIGLIORE PER RAGGIUNGERLO (come) Fabio A. Scheibe Linguaggi pe DB 2 CLASSIFICAZIONE DEI LINGUAGGI LINGUAGGI DI DEFINIZIONE DEI DATI (DDL) PER CREARE GLI SCHEMI DEI DATI E DEFINIRE LE LORO PROPRIETA LINGUAGGI DI MANIPOLAZIONE DEI DATI (DML) PER AGGIORNARE (CREARE) LE ISTANZE DEI DATI PER L INTERROGAZIONE DEI DATI (p.e. scivee pogammi applicativi) Fabio A. Scheibe Linguaggi pe DB 3 2
3 LINGUAGGI DI MANIPOLAZIONE DEI DATI L OPERAZIONE FONDAMENTALE PER MANIPOLARE UNA BASE DI DATI E L INTERROGAZIONE CON L INTERROGAZIONE SI ESEGUE L ACCESSO AI DATI DESIDERATI AVENDO AVUTO ACCESSO AI DATI DESIDERATI E ANCHE POSSIBILE MODIFICARLI (UPDATE) CANCELLARLI (DELETE) INSERIRNE DI NUOVI (INSERT) AGGIUNGERNE (APPEND) Fabio A. Scheibe Linguaggi pe DB 4 ALGEBRA RELAZIONALE E UN LINGUAGGIO FORMALE PROCEDURALE PER FORMULARE INTERROGAZIONI BASATO SU 5 OPERAZIONI FONDAMENTALI DEFINITO DA E. CODD NEL 1970 Fabio A. Scheibe Linguaggi pe DB 5 3
4 OPERAZIONI DELL ALGEBRA RELAZIONALE OPERAZIONI FONDAMENTALI UNARIE BINARIE selezione poiezione unione diffeenza podotto catesiano σ X DERIVATE BINARIE intesezione join semi-join divisione Fabio A. Scheibe Linguaggi pe DB 6 studente MATR. NOME CITTA C-DIP ESEMPIO 123 Calo Bologna Inf 415 Paola Toino Inf 702 Antonio Roma Log coso C-CORSO TITOLO DOCENTE esame MATR. C-CORSO DATA VOTO 1 matematica Baozzi 2 infomatica Meo /9/ /1/ /9/ Fabio A. Scheibe Linguaggi pe DB 7 4
5 ESEMPIO DI SELEZIONE σ nome = Paola studente E UNA TABELLA CON SCHEMA LO STESSO DI studente (STESSO GRADO) ISTANZA LE TUPLE DI studente CHE SODDISFANO IL PREDICATO DI SELEZIONE (CARDINALITA ) MATR. NOME CITTA C-DIP 415 Paola Toino Inf Fabio A. Scheibe Linguaggi pe DB 8 P SINTASSI DELLA SELEZIONE σ σ P P OPERATORE PREDICATO OPERANDO ESPRESSIONE BOOLEANA DI PREDICATI SEMPLICI OPERAZIONI BOOLEANE PREDICATI SEMPLICI AND (P 1 P 2 ) TRUE, FALSE OR (P 1 P 2 ) temine compaatoe temine NOT ( P 1 ) COMPARATORE =,, <,, >, TERMINE COSTANTE, ATTRIBUTO ESPRESSIONE ARITMETICA DI COSTANTI E ATTRIBUTI Fabio A. Scheibe Linguaggi pe DB 9 5
6 ESEMPIO DI SELEZIONE σ (CITTÀ = Toino ) ((CITTÀ = Roma ) (C-DIP= Log )) studente studente MATR. NOME CITTA C-DIP 123 Calo Bologna Inf 415 Paola Toino Inf 702 Antonio Roma Log Fabio A. Scheibe Linguaggi pe DB 10 ESEMPIO DI PROIEZIONE Π NOME, C-DIP studente E UNA TABELLA CON SCHEMA SOLO GLI ATTRIBUTI NOME E C-DIP (GRADO ) ISTANZA LA RESTRIZIONE DELLE TUPLE DI studente SUGLI ATTRIBUTI NOME E C-DIP (CARDINALITA ) NOME C-DIP Calo Inf Paola Inf Antonio Log Fabio A. Scheibe Linguaggi pe DB 11 6
7 SINTASSI DELLA PROIEZIONE Π ATTR1,, ATTRn FORMALMENTE LA PROIEZIONE ELIMINA I DUPLICATI Π C-DIP studente C-DIP Inf Log NEI SISTEMI IN USO L ELIMINAZIONE DEI DUPLICATI VA RICHIESTA ESPLICITAMENTE Fabio A. Scheibe Linguaggi pe DB 12 OPERAZIONI NON ALGEBRICHE ASSEGNAMENTO SERVE A DARE UN NOME AL RISULTATO DI UN OPERAZIONE ALGEBRICA toinesi = σ (CITTÀ = Toino ) studenti infomatici = σ (C-DIP = inf ) studenti RIDENOMINAZIONE PERMETTE DI MODIFICARE I NOMI DEGLI ATTRIBUTI ρ genitoe <-- pade patenità ρ genitoe <-- made matenità IN QUESTO MODO E POSSIBILE RENDERE COMPATIBILI DOMINII ORIGINARIAMENTE DIVERSI Fabio A. Scheibe Linguaggi pe DB 13 7
8 UNIONE E DIFFERENZA tabella1 tabella2 t1 t2 tabella1 tabella2 t1 t2 tabella1 E tabella2 DEVONO ESSERE COMPATIBILI STESSO GRADO DOMINI ORDINATAMENTE DELLO STESSO TIPO Fabio A. Scheibe Linguaggi pe DB 14 infomatici toinesi E UNA TABELLA CON SCHEMA LO STESSO DI infomatici ISTANZA ESEMPIO DI UNIONE L UNIONE DELLE TUPLE DI infomatici E toinesi MATR. NOME CITTA C-DIP 123 Calo Bologna Inf 415 Paola Toino Inf Fabio A. Scheibe Linguaggi pe DB 15 8
9 ESEMPIO DI DIFFERENZA infomatici toinesi E UNA TABELLA CON SCHEMA LO STESSO DI infomatici ISTANZA LA DIFFERENZA DELLE TUPLE DI infomatici E toinesi MATR. NOME CITTA C-DIP 123 Calo Bologna Inf Fabio A. Scheibe Linguaggi pe DB 16 PRODOTTO CARTESIANO X s E UNA TABELLA CON SCHEMA TUTTI GLI ATTRIBUTI DI E DI s (GRADO ( X s) = GRADO () + GRADO (s)) ISTANZA TUTTE LE POSSIBILI COPPIE DI TUPLE DI E DI s (CARD ( X s) = CARD () * CARD (s)) Fabio A. Scheibe Linguaggi pe DB 17 9
10 ESPRESSIONI ALGEBRICHE CONCATENAZIONE DI PIU OPERAZIONI ALGEBRICHE ESPRIMONO INTERROGAZIONI IN MODO FORMALE CONSENTONO DI ESTRARRE INFORMAZIONI DALLA BASE DI DATI Fabio A. Scheibe Linguaggi pe DB 18 UN ALTRO ESEMPIO DI BASE DI DATI coentista (NOME, VIA, CITTA ) cliente (CORRENTISTA, IMPIEGATO) filiale (NOME, PATRIMONIO, CITTA ) depositi (FILIALE, NUMERO, CORRENTISTA, SALDO) pestiti (FILIALE, NUMERO, CORRENTISTA, QUANTITA ) Fabio A. Scheibe Linguaggi pe DB 19 10
11 cliente coentista ESEMPIO DI USO DI ESPRESSIONI ALGEBRICHE CORRENTISTA IMPIEGATO Rossi Bambilla Feai Ghezzi Feai Feai NOME VIA CITTA Rossi Dante MI Bianchi Vedi RM Nei Po TO Bambilla Oefici MI Feai Vedi TO INTERROGAZIONE FORNIRE I NOMI E LE CITTA DI RESIDENZA DEI CLIENTI DELL IMPIEGATO Feai CLIENTE. CORRENT. 4 CORRENT. CITTA Bambilla MI Feai TO 1 = cliente X coentista CLIENTE. CLIENTE. CORRENT. CORRENT. CORRENT. CORRENT. IMPIEGATO NOME VIA CITTA Rossi Ghezzi Rossi Dante MI Rossi Ghezzi Bianchi Vedi RM Rossi Ghezzi Nei Po TO Rossi Ghezzi Bambilla Oefici MI Rossi Ghezzi Feai Vedi TO Bambilla Feai Rossi Dante MI Bambilla Feai Bianchi Vedi RM Bambilla Feai Nei Po TO Bambilla Feai Bambilla Oefici MI Bambilla Feai Feai Vedi TO Feai Feai Rossi Dante MI Feai Feai Bianchi Vedi RM Feai Feai Nei Po TO Feai Feai Bambilla Oefici MI Feai Feai Feai Vedi TO 1 = cliente X coentista 2 =σ CLIENTE.IMPIEGATO= Feai 1 3 =σ CLIENTE.CORRENT= CORRENT.NOME 2 4 =Π CLIENTE.CORRENT, CORRENT.CITTA 3 Fabio A. Scheibe Linguaggi pe DB 20 INTERSEZIONE tabella1 tabella2 t2 tabella1 E tabella2 DEVONO ESSERE COMPATIBILI E DERIVABILE TRAMITE LA SEGUENTE FORMULA t1 s = - (-s) Fabio A. Scheibe Linguaggi pe DB 21 11
12 ESEMPIO DI INTERSEZIONE infomatici toinesi E UNA TABELLA CON SCHEMA LO STESSO DI infomatici ISTANZA L INTERSEZIONE DELLE TUPLE DI infomatici E toinesi MATR. NOME CITTA C-DIP 415 Paola Toino Inf Fabio A. Scheibe Linguaggi pe DB 22 ESEMPIO DI JOIN studente studente.matr=esame.matr esame E UNA TABELLA CON SCHEMA LA CONCATENAZIONE DEGLI SCHEMI DI studente E esame ISTANZA LE TUPLE OTTENUTE CONCATENANDO QUELLE TUPLE DI studente E esame CHE SODDISFANO IL PREDICATO MATR. NOME CITTA C-DIP 123 Calo Bologna Inf 123 Calo Bologna Inf 702 Antonio Roma Log MATR. C-CORSO DATA VOTO /9/ /1/ /9/ Fabio A. Scheibe Linguaggi pe DB 23 12
13 SINTASSI DEL JOIN 1 2 E EQUIVALENTE ALLA SEGUENTE ESPRESSIONE σ P 1 X 2 SINTASSI DEL PREDICATO DI JOIN ESPRESSIONE CONGIUNTIVA DI PREDICATI SEMPLICI ATTR 1 COMP ATTR 2 ATTR 1 1 ATTR 2 2 COMP =,, <,, >, ATTRIBUTI OMONIMI SONO RESI NON AMBIGUI USANDO LA NOTAZIONE PUNTATA i. ATTR j Fabio A. Scheibe Linguaggi pe DB 24 P EQUI-JOIN E JOIN NATURALE EQUI-JOIN IL PREDICATO AMMETTE SOLO CONFRONTI DI UGUAGLIANZA JOIN NATURALE EQUI-JOIN DI TUTTI GLI ATTRIBUTI OMONIMI SI OMETTE IL PREDICATO SI ELIMINA LA COLONNA RIPETUTA studente esame MATR. NOME CITTA C-DIP C-CORSO DATA VOTO 123 Calo Bologna Inf 123 Calo Bologna Inf 702 Antonio Roma Log 1 7/9/ /1/ /9/ Fabio A. Scheibe Linguaggi pe DB 25 13
14 SINTASSI DEL JOIN NATURALE s = Π R S (.A1=s.A1,,.An=s.An s) {A1,, An} = R S R S = Φ X E ASSOCIATIVA Fabio A. Scheibe Linguaggi pe DB 26 JOIN NATURALE DI TRE TABELLE studente esame coso MATR. NOME CITTA C-DIP C-CORSO DATA VOTO TITOLO DOCENTE 123 Calo Bologna Inf 123 Calo Bologna Inf 702 Antonio Roma Log 1 7/9/ /1/ /9/ matematica infomatica infomatica Baozzi Meo Meo Fabio A. Scheibe Linguaggi pe DB 27 14
15 SEMI-JOIN studente studente.matr=esame.matr esame E EQUIVALENTE ALLA SEGUENTE ESPRESSIONE Π studente.* (studente studente.matr=esame.matr esame) PRODUCE UN SOTTOINSIEME DI studente solo gli studenti che hanno dato almeno un esame studente MATR. NOME CITTA C-DIP 123 Calo Bologna Inf 702 Antonio Roma Log Fabio A. Scheibe Linguaggi pe DB 28 SEMI-JOIN NATURALE studente esame E EQUIVALENTE ALLA SEGUENTE ESPRESSIONE Π studente.* (studente esame) IN QUESTO ESEMPIO IL RISULTATO E UGUALE AL CASO PRECEDENTE studente MATR. NOME CITTA C-DIP 123 Calo Bologna Inf 702 Antonio Roma Log Fabio A. Scheibe Linguaggi pe DB 29 15
16 DIVISIONE s E EQUIVALENTE ALLA SEGUENTE ESPRESSIONE Π R-S - Π R-S ((Π R-S X s) - ) CON S R E UTILE PER ESPRIMERE INTERROGAZIONI CHE CONTENGONO IL QUANTIFICATORE UNIVERSALE X Y W Z a b c d s a b e f W Z X Y b c e f c d = a b e d c d e f e d e d e f a b d e Fabio A. Scheibe Linguaggi pe DB 30 ESEMPIO DI USO DELLA DIVISIONE TROVARE I NOMI DEI CORRENTISTI CHE HANNO UN DEPOSITO IN TUTTE LE FILIALI DI Milano TUTTE LE FILIALI DI Milano 1 = Π NOME (σ CITTA = Milano filiale) I CLIENTI DI CIASCUNA FILIALE 2 = Π FILIALE, CORRENTISTA depositi I CLIENTI DI 2 CHE SONO APPAIATI CON TUTTE LE FILIALI DI 1 3 = 2 1 Fabio A. Scheibe Linguaggi pe DB 31 16
17 ESEMPIO DI ESPRESSIONE COMPLESSA ESTRARRE IL NOME DEGLI STUDENTI CHE HANNO SOSTENUTO GLI ESAMI DI infomatica E matematica LO STESSO GIORNO Π NOME studente (esame σ TITOLO= infomatica coso) MATR=MATRMAT DATA=DATAMAT Π MATR,DATA (esame ρ MATRMAT,DATAMAT <--- MATR,DATA σ TITOLO= matematica coso) Fabio A. Scheibe Linguaggi pe DB 32 ESEMPIO DI ESPRESSIONE COMPLESSA ESTRARRE L ULTIMO ESAME SOSTENUTO DA CIASCUNO STUDENTE. esame - esame MATR=MATRNEW DATA < DATANEW ρ MATRNEW,DATANEW <-- MATR,DATA Π MATR,DATA esame Fabio A. Scheibe Linguaggi pe DB 33 17
18 RAPPRESENTAZIONE DELLE ESPRESSIONI TRAMITE ALBERI OGNI ESPRESSIONE DELL ALGEBRA RELAZIONALE PUO ESSERE RAPPRESENTATA CON UN ALBERO CHE ESPRIME L ORDINE DI VALUTAZIONE DEGLI OPERATORI LA RADICE E POSTA IN ALTO AD OGNI OPERATORE CORRISPONDE UN NODO INTERMEDIO OPERATORI UNARI HANNO UN RAMO IN INGRESSO E UNO IN USCITA OPERATORI BINARI HANNO DUE RAMI IN INGRESSO E UNO IN USCITA GLI OPERANDI (RELAZIONI) CORRISPONDONO ALLE FOGLIE Fabio A. Scheibe Linguaggi pe DB 34 ESEMPIO DI ALBERO NOME DEGLI STUDENTI CHE HANNO SOSTENUTO UN ESAME IL 10/10/00 CON VOTO PARI A 30/30 Π NOME studente σ DATA=10/10/00 VOTO=30/30 esame Π NOME studente σ DATA=10/10/00 VOTO=30/30 esame Fabio A. Scheibe Linguaggi pe DB 35 18
19 EQUIVALENZA DI ESPRESSIONI ALGEBRICHE 1 - ELIMINAZIONE DEI PRODOTTI CARTESIANI σ P X P s s VALE SE P E UNA CONGIUNZIONE DI PREDICATI ATTR comp ATTR Fabio A. Scheibe Linguaggi pe DB 36 EQUIVALENZA DI ESPRESSIONI ALGEBRICHE 2 - PUSH DELLA SELEZIONE RISPETTO AL JOIN σ P Q σ P s Q s VALE SE P E UN PREDICATO CHE SI APPLICA AI SOLI ATTRIBUTI DI Fabio A. Scheibe Linguaggi pe DB 37 19
20 EQUIVALENZA DI ESPRESSIONI ALGEBRICHE 3 - PUSH DELLA PROIEZIONE RISPETTO AL JOIN Π L Π L Q Q s Π LR,J Π LS,J s J SONO GLI ATTRIBUTI NECESSARI A VALUTARE Q LR = L -SCHEMA(s)-J LS = L -SCHEMA()-J Fabio A. Scheibe Linguaggi pe DB 38 EQUIVALENZA DI ESPRESSIONI ALGEBRICHE 4 - IDEMPOTENZA DELLA SELEZIONE σ P P = P1 P2 σ P1 σ P2 Fabio A. Scheibe Linguaggi pe DB 39 20
21 EQUIVALENZA DI ESPRESSIONI ALGEBRICHE 5 - IDEMPOTENZA DELLA PROIEZIONE Π L L1 = L L2 L Π L1 Π L2 Fabio A. Scheibe Linguaggi pe DB 40 EQUIVALENZA DI ESPRESSIONI ALGEBRICHE 6 - PUSH DELLA SELEZIONE RISPETTO ALL UNIONE σ P σ P σ P s s Fabio A. Scheibe Linguaggi pe DB 41 21
22 EQUIVALENZA DI ESPRESSIONI ALGEBRICHE 7 - PUSH DELLA SELEZIONE RISPETTO ALLA DIFFERENZA σ P σ P σ P σ P s s s Fabio A. Scheibe Linguaggi pe DB 42 EQUIVALENZA DI ESPRESSIONI ALGEBRICHE 8 - PUSH DELLA PROIEZIONE RISPETTO ALL UNIONE Π L Π L Π L s s ATTENZIONE: IL PUSH DELLA PROIEZIONE RISPETTO A DIFFERENZA E INTERSEZIONE NON VALE Fabio A. Scheibe Linguaggi pe DB 43 22
23 EQUIVALENZA DI ESPRESSIONI ALGEBRICHE 9 - COMMUTAZIONE DI JOIN E UNIONE 1 2 s1 s2 1 s1 1 s2 2 s1 2 s2 Fabio A. Scheibe Linguaggi pe DB 44 FORMULE UTILI = = - = Φ σ P = σ P = σ P - σ P = σ P σ P1 σ P2 = σ P1 P2 σ P1 σ P2 = σ P1 P2 σ P1 - σ P2 = σ P1 P2 σ P Φ = Φ Π L Φ = Φ X Φ = Φ Φ = Φ = Φ = Φ Φ = Φ Φ = Φ Fabio A. Scheibe Linguaggi pe DB 45 23
24 OTTIMIZZAZIONE ALGEBRICA TRA TUTTE LE RAPPRESENTAZIONI EQUIVALENTI CONVIENE SCEGLIERE QUELLA MENO COSTOSA DA ESEGUIRE MINIMIZZARE LA DIMENSIONE DEI RISULTATI INTERMEDI UTILIZZARE, DOVE POSSIBILE, LE TRASFORMAZIONI DI PUSH (2,3,6,7,8) USARE LE TRASFORMAZIONI DI IDEMPOTENZA (4, 5) PER GENERARE NUOVE SELEZIONI E PROIEZIONI CERCARE DI COMBINARE I PRODOTTI CARTESIANI CON LE SELEZIONI I CUI PREDICATI APPARTENGONO AD ENTRAMBI GLI OPERANDI (DIVENTANO JOIN) Fabio A. Scheibe Linguaggi pe DB 46 DIMENSIONI DEI RISULTATI INTERMEDI VALUTARE IN GENERALE LE DIMENSIONI DEI RISULTATI INTERMEDI E OPERAZIONE COMPLESSA SI USANO METODI APPROSSIMATI FACENDO RICORSO AD OPERAZIONI STATISTICHE SI SUPPONE UNIFORME LA DISTRIBUZIONE DEI VALORI NEI DOMINI E NON CORRELATI I DATI RELATIVI AI PREDICATI NELLE INTERROGAZIONI Fabio A. Scheibe Linguaggi pe DB 47 24
25 DIMENSIONI DEI RISULTATI INTERMEDI PARAMETRI QUANTITATIVI CARD( i ) NUMERO DI TUPLE DI i SIZE (t i ) DIMENSIONE (in byte) DELLA TUPLA DI i SIZE (A j ) DIMENSIONE (in byte) DELL ATTRIBUTO A j DI i VAL (A j ) NUMERO DI VALORI DISTINTI DELL ATTRIBUTO A j DI i S I = 1/ VAL (A j ) LA SELETTIVITA DEL DOMINIO SUL QUALE E DEFINITO L ATTRIBUTO A j Fabio A. Scheibe Linguaggi pe DB 48 DIMENSIONI DEI RISULTATI INTERMEDI OPERAZIONE DI SELEZIONE CARD(isultato) = S P * CARD(opeando) S P = SELETTIVITA DEL PREDICATO P = A B P = A B P = A S P = S A * S B S P = S A + S B -S A * S B S P = 1 - S A SIZE(isultato) = SIZE(opeando) VAL(A i ) = 1 i P VAL(A i ) = col (CARD(opeando), VAL (A i ), CARD(isultato)) i P Fabio A. Scheibe Linguaggi pe DB 49 25
26 ESEMPIO DI OTTIMIZZAZIONE DATO LO SCHEMA (A,B,C) s(c,d,e) t(d,e,f,g) SI OTTIMIZZI L ESPRESSIONE Π B σ (.C=s.C) (s.d=t.d) (.A=1) (.B>t.F) X s X t Fabio A. Scheibe Linguaggi pe DB 50 ESEMPIO DI OTTIMIZZAZIONE Π B σ (.C=s.C) (s.d=t.d) (.A=1) (.B>t.F) X s X t Π B Π BC Π FC (.C=s.C) (B >F) σ A=1 Π DC Π DF s t Fabio A. Scheibe Linguaggi pe DB 51 26
27 MINIMA ESPRESSIONE CONTENITORE (CONTAIN VIEW) DATE n INTERROGAZIONI SU UNA BASE DI DATI CONSENTE DI ESTRARNE I RISULTATI MEDIANTE SELEZIONI E PROIEZIONI SU DI ESSA DATO LO SCHEMA (A,B,C) s(b,c,d,e,f) t(d, G) SI RICAVI LA CONTAIN VIEW PER LE INTERROGAZIONI 1) Π.C,G σ (A=1) (.B=s.B) (s.d=t.d) (E=1) (G>3) X s X t 2) Π.C,F σ (.C>G) (A=1) (E=1) (F>3) (G>2) (s.d=t.d (.B=s.B)) X s X t Fabio A. Scheibe Linguaggi pe DB 52 ESTRAZIONE DELLA CONTAIN VIEW RICERCA DELLA MASSIMA SOTTOESPRESSIONE COMUNE (MSE) Π CGF Π BC Π BGF σ A=1 Π DF σ G>2 σ E=1 s t Fabio A. Scheibe Linguaggi pe DB 53 27
28 CALCOLO DELLE INTERROGAZIONI MEDIANTE LA MSE 1) 2) Π CG Π CF σ G>3 σ G>G F>3 MSE MSE Fabio A. Scheibe Linguaggi pe DB 54 CALCOLO RELAZIONALE E UNA FAMIGLIA DI LINGUAGGI FORMALI DICHIARATIVI (NON PROCEDURALI) PER FORMULARE INTERROGAZIONI DUE TIPI PRINCIPALI CALCOLO RELAZIONALE DELLE TUPLE (TRC) CALCOLO RELAZIONALE DEI DOMINI (DRC) HA UN POTERE ESPRESSIVO PARI A QUELLO DELL ALGEBRA RELAZIONALE Fabio A. Scheibe Linguaggi pe DB 55 28
29 DEFINIZIONE FORMALE DEL TRC FORMA STANDARD { t p(t) } (TUTTE LE TUPLE t PER LE QUALI E VERA p(t)) p(t) E UNA FORMULA COSTRUITA TRAMITE ATOMI ATOMI t t 1 [A 1 ] comp t 2 [A 2 ] t[a] comp k COMPOSIZIONE DI FORMULE BEN FORMATE (WFF) UN ATOMO E UNA WFF SE p E UNA WFF, LO SONO ANCHE p E (p) SE p1 E p2 SONO WFF, LO SONO ANCHE p1 p2, p1 p2, p1 p2 SE p E UNA WFF IN CUI s E UNA VARIABILE, LO SONO ANCHE s (p(s)) E s (p(s)) Fabio A. Scheibe Linguaggi pe DB 56 PROPRIETA DEL TRC p1 p2 ( p1 p2) (DE MORGAN) t (p(t)) t ( p(t)) p1 p2 p1 p2 FORMULE UNSAFE { t t } FORNISCE UN RISULTATO INFINITO SI RESTRINGE LA FORMULAZIONE DEL CALCOLO DELLE FORMULE AI DOMINII ATTIVI LE TUPLE CHE SODDISFANO UNA FORMULA POSSONO ESSERE COMPOSTE SOLAMENTE DA VALORI CHE COMPAIONO ESPLICITAMENTE NELLA FORMULA IN TUPLE DI RELAZIONI MENZIONATE NELLA FORMULA Fabio A. Scheibe Linguaggi pe DB 57 29
30 ESEMPIO DI TRC NOME DEGLI STUDENTI CHE HANNO PRESO 30 IN matematica { t t1 studente, t2 esame, t3 coso ( t[nome] = t1[nome] t1[matr] = t2[matr] t2[c-corso] = t3[c-corso] t2[voto] = 30 t3[titolo] = matematica )} Fabio A. Scheibe Linguaggi pe DB 58 ESEMPIO DI TRC MATRICOLA DEGLI STUDENTI CHE HANNO SOSTENUTO matematica MA NON basi di dati { t t1 esame, t2 coso ( t[matr] = t1[matr] t1[c-corso] = t2[c-corso] t2 [TITOLO] = matematica ) ( t3 esame, t4 coso (t[matr] = t3[matr] t3[c-corso] = t4[c-corso] t4[titolo] = basi di dati )) } Fabio A. Scheibe Linguaggi pe DB 59 30
31 EQUIVALENZA TRA ALGEBRA E TRC E SUFFICIENTE MOSTRARE CHE SI POSSONO REALIZZARE I 5 OPERATORI FONDAMENTALI SELEZIONE σ A=1 { t t1 ( t1[a] = 1 t=t1) } PROIEZIONE Π AC { t t1 ( t[a,c] = t1[a,c]) } PRODOTTO CARTESIANO (A,B,C) X s(d,e,f) { t t1, t2 s ( t[a,b,c] = t1[a,b,c] t[d,e,f] = t2[d,e,f] ) } Fabio A. Scheibe Linguaggi pe DB 60 EQUIVALENZA TRA ALGEBRA E TRC UNIONE s { t t1 t2 s ( t=t1 t=t2) } DIFFERENZA - s { t t1 t=t1 ( t2 s, t=t2) } ESEMPIO DI JOIN (A,C) A=B s(b,d) { t t1, t2 s ( t[a,c] = t1[a,c] t[b,d] = t2[b,d] t[a]=t[b]) } Fabio A. Scheibe Linguaggi pe DB 61 31
32 σ X Fabio A. Scheibe Linguaggi pe DB 62 32
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
DettagliIntroduzione 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
DettagliOperazioni 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
DettagliBasi 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
DettagliALGEBRA 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.
DettagliLinguaggi 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
DettagliElementi di Algebra Relazionale
Note dalle lezioni di INFORMATICA (per gli allievi della classe quinta - indirizzo MERCURIO) Elementi di Algebra Relazionale prof. Stefano D.L.Campanozzi I.T.C. Giulio Cesare Bari - a.s. 2008-2009 1 Introduzione
Dettagli(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
DettagliBasi 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
DettagliPer visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere;
Maschere e Query Le Maschere (1/2) Per visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere; Le maschere sono simili a moduli cartacei: ad ogni campo corrisponde un etichetta
DettagliAttributi 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à
DettagliOttimizzazione delle interrogazioni (parte I)
Ottimizzazione delle interrogazioni I Basi di Dati / Complementi di Basi di Dati 1 Ottimizzazione delle interrogazioni (parte I) Angelo Montanari Dipartimento di Matematica e Informatica Università di
DettagliCalcolo 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
DettagliVincoli 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?
DettagliLezione 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)
DettagliAlgebra di Boole ed Elementi di Logica
Algebra di Boole ed Elementi di Logica 53 Cenni all algebra di Boole L algebra di Boole (inventata da G. Boole, britannico, seconda metà 8), o algebra della logica, si basa su operazioni logiche Le operazioni
DettagliCardinalità e identificatori. Informatica. Generalizzazioni. Generalizzazioni. Generalizzazioni. Generalizzazioni
e identificatori Codice (0,1) (1,1) Dirige Informatica Lezione 8 Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 2012 2013 1 Cognome
DettagliIl 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
DettagliBasi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL
Basi di dati Il Linguaggio SQL Data Definition Language (DDL) Data Definition Language: insieme di istruzioni utilizzate per modificare la struttura della base di dati Ne fanno parte le istruzioni di inserimento,
DettagliIl Modello Relazionale
Il Modello Relazionale 1 Proposto da E. F. Codd nel 1970 per favorire l indipendenza dei dati e reso disponibile come modello logico in DBMS reali nel 1981 Si basa sul concetto matematico di relazione,
DettagliCorrettezza. 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
DettagliLezione 8. La macchina universale
Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione
DettagliModello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli
Modello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli gerarchico e reticolare sono più vicini alle strutture
DettagliCalcolatori: Algebra Booleana e Reti Logiche
Calcolatori: Algebra Booleana e Reti Logiche 1 Algebra Booleana e Variabili Logiche I fondamenti dell Algebra Booleana (o Algebra di Boole) furono delineati dal matematico George Boole, in un lavoro pubblicato
DettagliMODELLO RELAZIONALE. Introduzione
MODELLO RELAZIONALE Introduzione E' stato proposto agli inizi degli anni 70 da Codd finalizzato alla realizzazione dell indipendenza dei dati, unisce concetti derivati dalla teoria degli insiemi (relazioni)
DettagliSQL 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.
DettagliIl 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
DettagliAlgebra 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
DettagliQuery. 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è
DettagliSoluzione di equazioni quadratiche
Soluzione di equazioni quadratiche Soluzione sulla Retta Algebrica Inseriamo sulla Retta Algebrica le seguenti espressioni polinomiali x e x 3 e cerchiamo di individuare i valori di x per i quali i punti
DettagliAlgebra 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)
DettagliInformatica (Basi di Dati)
Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Entità-Relazione Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.
DettagliGli 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:
DettagliDBMS (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
DettagliInformatica. Il modello relazionale: Relazioni e tabelle. Relazioni con attributi
Informatica Basi di dati parte 3 Basi di dati relazionali: relazioni, tabelle, chiavi, vincoli Lezione 9 Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione
DettagliIl linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.
(Structured Query Language) : Il linguaggio è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. prima versione IBM alla fine degli anni '70 per un prototipo di ricerca (System
Dettagli2.2b: RELAZIONI E BASI DI DATI. Atzeni, cap. 2.1.4
2.2b: RELAZIONI E BASI DI DATI Atzeni, cap. 2.1.4 Il modello è basato su valori Una Base di Dati è generalmente costituita da più di una Tabella Le corrispondenze fra dati presenti in tabelle diverse sono
Dettaglilogica dei predicati
Calcolo relazionale Calcolo relazionale: logica dei predicati, dove la semantica di ogni predicato esprime una condizione sui dati. E un linguaggio di query, dichiarativo: il risultato è dato da una descrizione
DettagliAlgebra 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
DettagliAlcune nozioni di base di Logica Matematica
Alcune nozioni di base di Logica Matematica Ad uso del corsi di Programmazione I e II Nicola Galesi Dipartimento di Informatica Sapienza Universitá Roma November 1, 2007 Questa é una breve raccolta di
DettagliAlgebra 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
DettagliIntroduzione. 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
DettagliFa riferimento ad una famiglia di linguaggi dichiarativi, basati sul calcolo dei predicati del primo ordine
Calcolo relazionale Fa riferimento ad una famiglia di linguaggi dichiarativi, basati sul calcolo dei predicati del primo ordine calcolo Specifica (èla base relazionale su tuple le di proprietà molti con
DettagliUso 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
DettagliAlgebra Relazionale. algebra relazionale
Algebra Relazionale algebra relazionale Linguaggi di Interrogazione linguaggi formali Algebra relazionale Calcolo relazionale Programmazione logica linguaggi programmativi SQL: Structured Query Language
DettagliSecondo Compitino di Basi di Dati
Secondo Compitino di Basi di Dati 10 Giugno 2004 NOME: COGNOME: MATRICOLA: Esercizio Punti previsti 1 18 2 12 3 3 Totale 33 Punti assegnati Esercizio 1 (Punti 18) Si vuole realizzare un applicazione per
DettagliLo 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
DettagliNormalizzazione. Normalizzazione. Normalizzazione e modello ER. Esempio. Normalizzazione
Normalizzazione Normalizzazione Introduzione Forma normale di Boyce Codd Decomposizione in forma normale Normalizzazione Introduzione La normalizzazione è un procedimento che, a partire da uno schema relazionale
DettagliModello Relazionale. Modello Relazionale. Relazioni - Prodotto Cartesiano. Relazione: tre accezioni. Es. Dati gli insiemi
Modello Relazionale Modello Relazionale Proposto agli inizi degli anni 70 da Codd Finalizzato alla realizzazione dell indipendenza dei dati Unisce concetti derivati dalla teoria degli insiemi (relazioni)
DettagliDB - 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
DettagliInformatica per le discipline umanistiche 2 lezione 10
Informatica per le discipline umanistiche 2 lezione 10 Parte III: il computer come strumento per l interazione e la comunicazione Si è parlato di identità Parte III: il computer come strumento per l interazione
DettagliI database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due:
Il modello relazionale I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due: 1. forniscono sistemi semplici ed efficienti per rappresentare
DettagliSQL. Linguaggio di interrogazione per basi di dati relazionali. Relazione = tabella con attributi (a 1, a 2,, a n ): Funzionalità principali di SQL:
SQL Linguaggio di interrogazione per basi di dati relazionali Relazione = tabella con attributi (a 1, a 2,, a n ): Funzionalità principali di SQL: Creazione delle tabelle Interrogazione della base di dati
DettagliDatabase. Si ringrazia Marco Bertini per le slides
Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida
DettagliSISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione
SISTEMI INFORMATIVI AVANZATI -2010/2011 1 Introduzione In queste dispense, dopo aver riportato una sintesi del concetto di Dipendenza Funzionale e di Normalizzazione estratti dal libro Progetto di Basi
DettagliINFORMATICA. 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
DettagliBasi di dati. Concetti Introduttivi ESEMPIO. Fisica, Analisi, Informatica. Entità Relazioni Interrogazioni. Database 2
Basi di dati Concetti Introduttivi ESEMPIO Fisica, Analisi, Informatica Entità Relazioni Interrogazioni Database 2 Tabella (I) STUDENTE Attributi Data di Nascita Indirizzo Matricola Luca Neri 27/10/1980
DettagliDATABASE 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.
DettagliBasi 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
DettagliBasi di dati. Le funzionalità del sistema non vanno però ignorate
Basi di dati La progettazione di una base di dati richiede di focalizzare lo sforzo su analisi, progettazione e implementazione della struttura con cui sono organizzati i dati (modelli di dati) Le funzionalità
DettagliALGEBRA DELLE PROPOSIZIONI
Università di Salerno Fondamenti di Informatica Corso di Laurea Ingegneria Corso B Docente: Ing. Giovanni Secondulfo Anno Accademico 2010-2011 ALGEBRA DELLE PROPOSIZIONI Fondamenti di Informatica Algebra
DettagliModelli relazionali. Esistono diversi modi di modellare un database. Il modello piu' usato al momento e' il modello relazionale
Cenni sui DATABASE Cos'e' un database Un database puo' essere definito come una collezione strutturata di record (dati) I dati sono memorizzati su un computer in modo opportuno e possono essere recuperati
DettagliSistemi per la gestione di database: MySQL ( )
Sistemi per la gestione di database: MySQL ( ) Relational Database e Relational Database Management System Un database è una raccolta di dati organizzata in modo da consentire l accesso, il reperimento
DettagliOrganizzazione degli archivi
COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i
DettagliJoin in SQL (primo modo) Informatica. Tabella Dipartimento. Interrogazione 4a. Interrogazione 4b. Interrogazione 4a
Join in SQL (primo modo) Informatica Lezione 7 Laurea magistrale in Psicologia Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 09- Per formulare interrogazioni che coinvolgono
DettagliLe query. Lezione 6 a cura di Maria Novella Mosciatti
Lezione 6 a cura di Maria Novella Mosciatti Le query Le query sono oggetti del DB che consentono di visualizzare, modificare e analizzare i dati in modi diversi. Si possono utilizzare query come origine
DettagliBasi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007
Basi di dati Concetti introduttivi Ultima modifica: 26/02/2007 ESEMPIO INSEGNAMENTI Fisica, Analisi, Informatica Aule Docenti Entità Relazioni Interrogazioni St udent i Database 2 Tabella (I) STUDENTE
DettagliAlgebra booleana. Si dice enunciato una proposizione che può essere soltanto vera o falsa.
Algebra booleana Nel lavoro di programmazione capita spesso di dover ricorrere ai principi della logica degli enunciati e occorre conoscere i concetti di base dell algebra delle proposizioni. L algebra
DettagliIstruzioni DML di SQL
Istruzioni DML di SQL Pag. 99 par.4 1 Sintassi: Costrutto: INSERT INTO (Inserimento di dati in tabelle) INSERT INTO [(, ,, )] VALUES (, ,
DettagliAlgebra di Boole. Le operazioni, nell algebra booleana sono basate su questi tre operatori: AND ( ), OR ( + ),NOT ( )
Algebra di Boole L algebra di Boole prende il nome da George Boole, matematico inglese (1815-1864), che pubblicò un libro nel 1854, nel quale vennero formulati i principi dell'algebra oggi conosciuta sotto
DettagliInterrogazioni complesse. SQL avanzato 1
Interrogazioni complesse SQL avanzato Classificazione delle interrogazioni complesse Query con ordinamento Query con aggregazione Query con raggruppamento Query binarie Query annidate SQL avanzato 2 Esempio
DettagliAlgebra Booleana ed Espressioni Booleane
Algebra Booleana ed Espressioni Booleane Che cosa è un Algebra? Dato un insieme E di elementi (qualsiasi, non necessariamente numerico) ed una o più operazioni definite sugli elementi appartenenti a tale
DettagliEXCEL FUNZIONI PRINCIPALI
EXCEL FUNZIONI PRINCIPALI Funzione SE() Sintassi: SE(VERIFICA, VALORE SE VERO, VALORE SE FALSO): verifica un valore e ritorna una risposta in base al risultato vero/falso Esempio: =SE(A2=15; "OK"; "NO")
DettagliElena 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
DettagliDatabase: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro
Database relazionali: un'introduzione Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro Rappresentazione astratta di aspetti del mondo reale (Universe
DettagliDispensa di database Access
Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di
DettagliCompito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1
Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione della base di dati di una facoltà e si definisca
DettagliSQL seconda 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 2012/13
SQL seconda 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 2012/13 Interrogazioni nidificate Interrogazioni nidificate 2 Si ottiene una interrogazione nidificata quando un interrogazione
DettagliBasi di dati. Linguaggi di interrogazione
Basi di dati Linguaggi di interrogazione Algebra relazionale Definita da Codd (70) Molto utile per imparare a formulare query Insieme minimo di 5 operazioni che danno l'intero potere espressivo del linguaggio
DettagliMODELLO 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
DettagliBasi di Dati. prof. Letizia Tanca. Linguaggi formali di interrogazione per il Modello Relazionale dei Dati
Basi di Dati prof. Letizia Tanca Linguaggi formali di interrogazione per il Modello Relazionale dei Dati Linguaggi di interrogazione Ricordiamo: Permettono di trovare un dato basandosi sulle sue proprietà.
DettagliData Management Software. Il linguaggio SQL. Raggruppamenti. Paolo Avallone Sr Consulting IT Specialist DB2, Data Management Marzo 2004
DB2 Data Management Software Il linguaggio SQL Raggruppamenti Paolo Avallone Sr Consulting IT Specialist DB2, Data Management Marzo 2004 LEGGERE LE SEGUENTI ATTENZIONI Le informazioni contenute in questa
DettagliMATLAB. Caratteristiche. Dati. Esempio di programma MATLAB. a = [1 2 3; 4 5 6; 7 8 9]; b = [1 2 3] ; c = a*b; c
Caratteristiche MATLAB Linguaggio di programmazione orientato all elaborazione di matrici (MATLAB=MATrix LABoratory) Le variabili sono matrici (una variabile scalare equivale ad una matrice di dimensione
DettagliBASI DI DATI DIPENDENZE FUNZIONALI E FORME NORMALI
BASI DI DATI DIPENDENZE FUNZIONALI E FORME NORMALI Prof. Fabio A. Schreiber Dipartimento di Elettronica e Informazione Politecnico di Milano ERRORI DI PROGETTAZIONE INSERIMENTO DI ELEMENTI RIDONDANTI SPRECO
DettagliEsercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:
Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Si consiglia di creare il data base, inserire i dati nelle tabelle, provare
DettagliLinguaggio del calcolatore. Algebra di Boole AND, OR, NOT. Notazione. And e or. Circuiti e reti combinatorie. Appendice A + dispense
Linguaggio del calcolatore Circuiti e reti combinatorie ppendice + dispense Solo assenza o presenza di tensione: o Tante componenti interconnesse che si basano su e nche per esprimere concetti complessi
DettagliFondamenti 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
DettagliIl modello relazionale
Il modello relazionale Il modello relazionale è stato introdotto nel 1970 da E.F. Codd. Soltanto a metà degli anni ottanta ha trovato una buona diffusione sul mercato, in quanto all epoca della sua introduzione
DettagliAbilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere
Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report Facoltà di Lingue e Letterature Straniere Le QUERY 2 Che cos è una Query? Una Query rappresenta uno strumento per interrogare un database.
DettagliINFORMATICA 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
DettagliDecomposizione senza perdita. Decomposizione senza perdita. Conservazione delle dipendenze. Conservazione delle dipendenze
Decomposizione senza perdita Data una relazione r su X, se X 1 e X 2 sono due sottoinsiemi di X la cui unione è X stesso, allora il join delle due relazioni ottenute per proiezione di r su X 1 e X 2 è
DettagliCosa è un foglio elettronico
Cosa è un foglio elettronico Versione informatica del foglio contabile Strumento per l elaborazione di numeri (ma non solo...) I valori inseriti possono essere modificati, analizzati, elaborati, ripetuti
DettagliIntroduzione ai database relazionali
Introduzione ai database relazionali Tabelle Un database (DB) è costituito da un insieme di file che memorizzano dati opportunamente organizzati Nei database relazionale tale organizzazione è costituita
DettagliStructured Query Language parte 1
Consorzio per la formazione e la ricerca in Ingegneria dell'informazione Structured Query Language parte 1 Come interrogare una base di dati relazionale ed avere la risposta esatta Docente: Gennaro Pepe
Dettagli4 SQL : Interrogazioni nidificate
Corso di Laurea in Ingegneria Gestionale SAPIENZA Università di Roma Esercitazioni del corso di Basi di Dati Prof.ssa Catarci e Prof.ssa Scannapieco Anno Accademico 2010/2011 Andrea Marrella Ultimo aggiornamento
DettagliLe Basi di Dati. Le Basi di Dati
Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per
DettagliProgettazione di Basi di Dati
Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione Progettazione Logica 2 E il modo attraverso il quale i dati sono rappresentati : fa riferimento al modello
DettagliNORMALIZZAZIONE DI SCHEMI RELAZIONALI. Prof.ssa Rosalba Giugno
NORMALIZZAZIONE DI SCHEMI RELAZIONALI Prof.ssa Rosalba Giugno PROBLEMA GENERALE La progettazione concettuale e logica produce uno schema relazionale che rappresenta la realta dei dati nella nostra applicazione.
DettagliBASE 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
DettagliCorso 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