Linguaggi per basi di dati

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Linguaggi per basi di dati"

Transcript

1 Linguaggi per basi di dati operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation language interrogazione ("query") aggiornamento Linguaggi di interrogazione per basi di dati relazionali Dichiarativi : specificano le proprietà del risultato ("che cosa") Procedurali specificano le modalità di generazione del risultato ("come")

2 Linguaggi di interrogazione Algebra relazionale: procedurale Calcolo relazionale: dichiarativo (teorico) SQL (Structured Query Language): parzialmente dichiarativo (reale) QE (Query by Example): dichiarativo (reale)

3 Algebra relazionale Insieme di operatori su relazioni che producono relazioni e possono essere composti Operatori dell'algebra relazionale unione, intersezione, differenza ridenominazione selezione proiezione join (join naturale, prodotto cartesiano, theta-join) Operatori insiemistici le relazioni sono insiemi i risultati debbono essere relazioni è possibile applicare unione, intersezione, differenza solo a relazioni definite sugli stessi attributi

4 Laureati Matricola 7274 Nome Rossi Età Neri Verdi Unione Laureati Quadri Quadri Matricola Matricola Nome Età 7274 Rossi Neri Verdi Neri 33 Nome Neri Neri Verdi Età

5 Laureati Matricola 7274 Nome Rossi Età Neri Verdi Intersezione Quadri Matricola 9297 Nome Neri Età Neri Verdi Laureati Quadri Matricola Nome Età 7432 Neri Verdi 45

6 Differenza Laureati Quadri Matricola Nome Età 7274 Rossi Neri Verdi 45 Matricola Nome Neri Neri Verdi Età Laureati Quadri Matricola Nome Età 7274 Rossi Neri Verdi 45

7 Un unione sensata ma impossibile Paternità Maternità Padre Adamo Adamo Abramo Figlio Abele Caino Isacco Madre Eva Eva Sara Figlio Abele Set Isacco Paternità Maternità??

8 Ridenominazione operatore monadico (con un argomento) "modifica lo schema" lasciando inalterata l'istanza dell'operando Paternità Padre Figlio Adamo Abele Adamo Caino Abramo Isacco REN Genitore Padre (Paternità) Genitore Adamo Adamo Abramo Figlio Abele Caino Isacco

9 Paternità Padre Adamo Adamo Abramo Figlio Abele Caino Isacco REN Genitore Padre (Paternità) Genitore Figlio Adamo Abele Adamo Caino Abramo Isacco Maternità Madre Eva Eva Sara Figlio Abele Set Isacco REN Genitore Madre (Maternità) Genitore Figlio Eva Abele Eva Set Sara Isacco

10 REN Genitore Padre (Paternità) Genitore Figlio Adamo Abele Adamo Caino Abramo Isacco REN Genitore Madre (Maternità) Genitore Figlio Eva Abele Eva Set Sara Isacco REN Genitore Padre (Paternità) REN Genitore Madre (Maternità) Genitore Figlio Adamo Abele Adamo Caino Abramo Isacco Eva Abele Eva Set Sara Isacco

11 Impiegati Cognome Rossi Neri Ufficio Roma Milano Stipendio Operai Cognome runi Verdi Fabbrica Monza Latina Salario REN Sede, Retribuzione Ufficio, Stipendio (Impiegati) REN Sede, Retribuzione Fabbrica, Salario (Operai) Cognome Sede Retribuzione Rossi Roma 55 Neri Milano 64 runi Monza 45 Verdi Latina 55

12 SELEZIONE operatore monadico produce un risultato che ha lo stesso schema ell'operando contiene un sottoinsieme delle ennuple dell'operando, quelle che soddisfano una condizione Impiegati Matricola Cognome Filiale Stipendio 7309 Rossi Roma Neri Milano Milano Milano Neri Napoli 64 impiegati che guadagnano più di 50 guadagnano più di 50 e lavorano a Milano hanno lo stesso nome della filiale presso cui lavorano

13 Selezione, sintassi e semantica Sintassi: SEL Condizione (Operando) Condizione: espressione booleana Semantica: il risultato contiene le ennuple dell'operando che soddisfano la condizione

14 Impiegati Matricola Cognome Filiale Stipendio Rossi Roma 55 Neri Milano 64 Milano Milano 44 Neri Napoli 64 impiegati che guadagnano più di 50 SEL Stipendio > 50 (Impiegati) Impiegati Matricola Cognome Filiale Stipendio 7309 Rossi Roma Neri Milano Milano Neri Milano Napoli Neri Napoli 64

15 impiegati che guadagnano più di 50 e lavorano a Milano SEL Stipendio > 50 AND Filiale = 'Milano' (Impiegati) impiegati che hanno lo stesso nome della filiale presso cui lavorano SEL Cognome = Filiale (Impiegati)

16 Proiezione operatore monadico produce un risultato che ha parte degli attributi dell'operando contiene ennuple cui contribuiscono tutte le ennuple dell'operando Selezione e proiezione operatori "ortogonali" selezione: decomposizione orizzontale proiezione: decomposizione verticale

17 proiezione selezione

18 Proiezione, sintassi e semantica sintassi PROJ ListaAttributi (Operando) semantica il risultato contiene le ennuple ottenute da tutte le ennuple dell'operando ristrette agli attributi nella lista

19 Impiegati Matricola matricola e cognome di tutti gli impiegati PROJ Matricola, Cognome (Impiegati) Matricola Cognome Filiale Stipendio Neri Napoli 55 Neri Milano 64 Rossi Roma 44 Rossi Roma 64 Cognome Filiale Stipendio Neri Napoli 55 Neri Milano 64 Rossi Roma 44 Rossi Roma 64 cognome e filiale di tutti gli impiegati PROJ Cognome, Filiale (Impiegati)

20 Cardinalità delle proiezioni una proiezione contiene al più tante ennuple quante l'operando può contenerne di meno se X è una superchiave di R, allora PROJ X (R) contiene esattamente tante ennuple quante R Selezione e proiezione Combinando selezione e proiezione, possiamo estrarre interessanti informazioni da una relazione

21 Impiegati Matricola Cognome Filiale Stipendio Neri Napoli 55 Neri Milano 64 Rossi Roma 44 Rossi Roma 64 matricola e cognome degli impiegati che guadagnano più di 50 Matricola Cognome Filiale Stipendio 7309 Rossi Roma Neri Milano Milano Neri Milano Napoli Neri Napoli 64 PROJ Matricola,Cognome (SEL Stipendio > 50 (Impiegati) )

22 Combinando selezione e proiezione, possiamo estrarre informazioni da una relazione non possiamo però correlare informazioni presenti in relazioni diverse Join il join è l'operatore più interessante dell'algebra relazionale permette di correlare dati in relazioni diverse Prove scritte in un concorso pubblico I compiti sono anonimi e ad ognuno è associata una busta chiusa con il nome del candidato Ciascun compito e la relativa busta vengono contrassegnati con uno stesso numero

23 Numero Voto Numero Candidato 1 Mario Rossi 2 Nicola Russo 3 Mario ianchi 4 Remo Neri Numero Candidato Mario Rossi Nicola Russo Mario ianchi Remo Neri Voto Sono stati correlati dati diversi in relazioni diverse sulla base di valori uguali in attributi con lo stesso nome

24 Join naturale operatore binario (generalizzabile) produce un risultato sull'unione degli attributi degli operandi con ennuple costruite ciascuna a partire da una ennupla di ognuno degli operandi Join, sintassi e semantica R 1 (X 1 ), R 2 (X 2 ) R 1 JOIN R 2 è una relazione su X 1 X 2 { t su X 1 X 2 esistono t 1 R 1 e t 2 R 2 con t[x 1 ]=t 1 e t[x 2 ] =t 2 }

25 Impiegato Rossi Reparto A Reparto A Capo Mori Neri runi ianchi Impiegato Reparto Capo Rossi A Mori Neri runi ianchi runi ogni ennupla contribuisce al risultato: join completo (ciascuna ennupla di ciascun operando contribuisce ad almeno una ennupla del risultato)

26 Reparto C Reparto D C Impiegato Rossi Neri ianchi Capo Mori runi Capo Mori runi Reparto A Un join non completo Impiegato Reparto Capo Neri Mori ianchi Mori Un join vuoto Impiegato Reparto Capo

27 Un join completo, con n x m ennuple Impiegato Reparto Reparto Capo Rossi A A Mori Neri runi Impiegato Reparto Capo Rossi Mori Rossi runi Neri Mori ianchi runi

28 Cardinalità del join Il join di R 1 e R 2 contiene un numero di ennuple compreso fra zero e il prodotto di R 1 e R 2 se il join coinvolge una chiave di R 2, allora il numero di ennuple è compreso fra zero e R 1 se il join coinvolge una chiave di R 2 e un vincolo di integrità referenziale, allora il numero di ennuple è pari a R 1 R 1 (A,), R 2 (,C) in generale 0 R 1 JOIN R 2 R 1 R 2 se è chiave in R 2 0 R 1 JOIN R 2 R 1 se è chiave in R 2 ed esiste vincolo di integrità referenziale fra (in R 1 ) e R 2 : R 1 JOIN R 2 = R 1

29 Join, una difficoltà Impiegato Reparto Reparto Capo Rossi A Mori Neri C runi ianchi Impiegato Reparto Capo Neri Mori ianchi Mori alcune ennuple non contribuiscono al risultato: vengono "tagliate fuori"

30 Join esterno Il join esterno estende, con valori nulli, le ennuple che verrebbero tagliate fuori da un join (interno) esiste in tre versioni: sinistro, destro, completo sinistro: mantiene tutte le ennuple del primo operando, estendendole con valori nulli, se necessario destro:... del secondo operando... completo: di entrambi gli operandi...

31 Impiegati Reparti Impiegato Reparto Reparto Capo Rossi A Mori Neri C runi ianchi Impiegati JOIN LEFT Reparti Impiegato Reparto Capo Neri Mori ianchi Mori Rossi A NULL

32 Impiegati Reparti Impiegato Reparto Reparto Capo Rossi A Mori Neri C runi ianchi Impiegati JOIN RIGHT Reparti Impiegato Reparto Capo Neri Mori ianchi Mori NULL C runi

33 Impiegati Reparti Impiegato Reparto Reparto Capo Rossi A Mori Neri C runi ianchi Impiegati JOIN FULL Reparti Impiegato Reparto Capo Neri Mori ianchi Mori Rossi A NULL NULL C runi

34 Join e proiezioni Impiegato Reparto Reparto Capo Rossi A Mori Neri C runi ianchi Impiegato Reparto Capo Neri Mori ianchi Mori Impiegato Reparto Reparto Capo Neri Mori ianchi

35 Impiegato Neri ianchi Verdi Proiezioni e join Impiegato Reparto Capo Neri Mori ianchi runi Verdi A ini Reparto A Reparto A Impiegato Reparto Capo Neri Mori ianchi runi Neri runi ianchi Mori Verdi A ini Capo Mori runi ini

36 R 1 (X 1 ), R 2 (X 2 ) Join e proiezioni PROJ X1 (R 1 JOIN R 2 ) R 1 R(X), X = X 1 X 2 (PROJ X1 (R)) JOIN (PROJ X2 (R)) R

37 Prodotto cartesiano un join naturale su relazioni senza attributi in comune contiene sempre un numero di ennuple pari al prodotto delle cardinalità degli operandi (le ennuple sono tutte combinabili )

38 Impiegati Reparti Impiegato Reparto Codice Capo Rossi A A Mori Neri runi ianchi Impiegati JOIN Reparti Impiegato Reparto Codice Capo Rossi A A Mori Rossi A runi Neri A Mori Neri runi ianchi A Mori ianchi runi

39 Il prodotto cartesiano, in pratica, ha senso (quasi) solo se seguito da selezione: SEL Condizione (R 1 JOIN R 2 ) L'operazione viene chiamata theta-join e indicata con R 1 JOIN Condizione R 2 Perché "theta-join"? La condizione C è spesso una congiunzione (AND) di atomi di confronto A 1 ϑ A 2 dove ϑ è uno degli operatori di confronto (=, >, <, ) se l'operatore è sempre l'uguaglianza (=) allora si parla di equijoin

40 Impiegati Reparti Impiegato Reparto Codice Rossi A A Neri ianchi Impiegati JOIN Reparto=Codice Reparti Capo Mori runi Impiegato Reparto Codice Capo Rossi A A Mori Rossi Neri A runi ianchi Neri A runi Mori Neri runi ianchi A Mori ianchi runi

41 Impiegati Reparti Impiegato Reparto Reparto Capo Rossi A A Mori Neri runi ianchi Impiegati JOIN Reparti

42 Join naturale ed equi-join Impiegati Impiegato Reparto Reparti Reparto Capo Impiegati JOIN Reparti PROJ Impiegato,Reparto,Capo ( SEL Reparto=Codice ( Impiegati JOIN REN Codice Reparto (Reparti) ))

43 Esempi Impiegati Matricola Nome Età Stipendio 7309 Rossi ianchi Neri runi Mori Lupi Supervisione Impiegato Capo

44 Trovare matricola, nome, età e stipendio degli impiegati che guadagnano più di 40 milioni SEL Stipendio>40 (Impiegati)

45 Matricola Nome Età Stipendio Rossi ianchi runi Mori Neri runi Lupi Mori Lupi SEL Stipendio>40 (Impiegati)

46 Trovare matricola, nome ed età degli impiegati che guadagnano più di 40 milioni PROJ Matricola, Nome, Età (SEL Stipendio>40 (Impiegati))

47 Matricola Nome Età Stipendio Rossi ianchi runi Mori Neri runi Lupi Mori Lupi PROJ Matricola, Nome, Età ( SEL Stipendio>40 (Impiegati) )

48 Trovare le matricole dei capi degli impiegati che guadagnano più di 40 milioni

49 Impiegati Matricola Nome Età Stipendio 7309 Rossi ianchi runi Mori Neri runi Lupi Mori Lupi Supervisione Impiegato Capo Supervisione PROJ Capo (Supervisione JOIN Impiegato=Matricola JOIN Impiegato=Matricola (SEL SEL Stipendio>40 (SEL Stipendio>40 Stipendio>40 (Impiegati)) (Impiegati)))

50 Trovare nome e stipendio dei capi degli impiegati che guadagnano più di 40 milioni

51 Impiegati Matricola Nome Età Stipendio 7309 Rossi ianchi Neri runi Mori Lupi Supervisione Impiegato Capo

52 Trovare nome e stipendio dei capi degli impiegati che guadagnano più di 40 milioni PROJ Capo Nome,Stipendio (Supervisione ( JOIN Impiegato=Matricola Impiegati JOIN (SEL Matricola=Capo Stipendio>40 (Impiegati))) PROJ Capo (Supervisione JOIN Impiegato=Matricola (SEL Stipendio>40 (Impiegati))))

53 PROJ Matr,Nome,Stip,MatrC,NomeC,StipC (SEL Stipendio>StipC ( REN MatrC,NomeC,StipC,EtàC Matr,Nome,Stip,Età (Impiegati) JOIN MatrC=Capo (Supervisione JOIN Impiegato=Matricola Impiegati))) Quale problema viene risolto? Partire dall esempio ed eseguire a pezzi!!! Ma da dove cominciamo?

54 Impiegati Matricola Nome Età Stipendio 7309 Rossi ianchi Neri runi Mori Lupi Supervisione Impiegato Capo

55 PROJ Matr,Nome,Stip,MatrC,NomeC,StipC (SEL Stipendio>StipC ( REN MatrC,NomeC,StipC,EtàC Matr,Nome,Stip,Età (Impiegati) JOIN MatrC=Capo (Supervisione JOIN Impiegato=Matricola Impiegati))) Supervisione JOIN Impiegato=Matricola Impiegati Chiamiamo X il risultato REN MatrC,NomeC,StipC,EtàC Matr,Nome,Stip,Età (Impiegati) Chiamiamo Y il risultato PROJ Matr,Nome,Stip,MatrC,NomeC,StipC (SEL Stipendio>StipC (Y JOIN MatrC=Capo (X))) Ed ora possiamo rispondere?

56 Trovare gli impiegati che guadagnano più del proprio capo, mostrando matricola, nome e stipendio dell'impiegato e del capo

57 Ed ora si risolva il seguente problema: Trovare le matricole dei capi i cui impiegati guadagnano tutti più di 40 milioni

58 Impiegati Matricola Nome Età Stipendio 7309 Rossi ianchi Neri runi Mori Lupi Supervisione Impiegato Capo

59 Trovare le matricole dei capi i cui impiegati guadagnano tutti più di 40 milioni PROJ Capo (Supervisione) - PROJ Capo (Supervisione JOIN Impiegato=Matricola (SEL Stipendio 40 (Impiegati)))

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

SQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari:

SQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari: SQL SQL (pronunciato anche come l inglese sequel: acronimo di Structured Query Language (linguaggio di interrogazione strutturato Linguaggio completo che presenta anche proprietà di: DDL (Data Definition

Dettagli

Informatica. Sintassi. Interrogazioni in SQL. Significato dell interrogazione. Tabella Impiegato. Basi di dati parte 4 SQL

Informatica. Sintassi. Interrogazioni in SQL. Significato dell interrogazione. Tabella Impiegato. Basi di dati parte 4 SQL Informatica Basi di dati parte 4 SQL Lezione 13 Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 2012 2013 1 Interrogazioni in

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

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

Corso di Informatica (Basi di Dati)

Corso di Informatica (Basi di Dati) Corso di Informatica (Basi di Dati) Lezione 6 (15 gennaio 2009) Linguaggio SQL: Data Definition Language (DDL) Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.

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

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

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

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

SQL (STRUCTURED QUERY LANGUAGE)

SQL (STRUCTURED QUERY LANGUAGE) SQL (STRUCTURED QUERY LANGUAGE) Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan SQL DDL Data Definition Language DML Data Manipulation Language DCL Data Control Language DDL Obiettivo: Definire la struttura

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

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

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

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

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

Corso Sistemi Informativi Avanzati. Programma 30 set 2015. Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende.

Corso Sistemi Informativi Avanzati. Programma 30 set 2015. Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende. Programma 30 set 205 Installazione Macchina Virtuale Introduzione alla BI nelle Aziende Introduzione SQL Macchina Virtuale È un emulazione di un computer su un altro computer Stesso punto di partenza per

Dettagli

Basi di dati e Sistemi informativi aziendali

Basi di dati e Sistemi informativi aziendali Sistemi informativi Linguaggio SQL: fondamenti Istruzione SELECT: fondamenti Interrogazioni nidificate Operatori insiemistici Istruzioni di aggiornamento Gestione delle tabelle 2 2007 Politecnico di Torino

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

SQL: Concetti Base -Prima Parte-

SQL: Concetti Base -Prima Parte- SQL: Concetti Base -Prima Parte- Atzeni, Ceri, Paraboschi, Torlone Basi Di Dati: Modelli e Linguaggi di Interrogazione, McGraw-Hill Italia Capitolo 4 SQL Structured Query Language Contiene: DDL (Data Definition

Dettagli

TEORIA sulle BASI DI DATI

TEORIA sulle BASI DI DATI TEORIA sulle BASI DI DATI A cura del Prof. Enea Ferri Cos è un DATA BASE E un insieme di archivi legati tra loro da relazioni. Vengono memorizzati su memorie di massa come un unico insieme, e possono essere

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

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

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

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

Storia. Corso di Basi di Dati Spaziali. Componente DDL. Funzionalità. Esempio. Creazione di schema. Linguaggi: SQL. Storia:

Storia. Corso di Basi di Dati Spaziali. Componente DDL. Funzionalità. Esempio. Creazione di schema. Linguaggi: SQL. Storia: Corso di Basi di Dati Spaziali Linguaggi: SQL Angelo Montanari Donatella Gubiani Storia Storia: 1974: prima proposta SEQUEL 1981: prime implementazioni 1983: standard di fatto 1986, 1989, 1992 e 1999:

Dettagli

Corso sul linguaggio SQL

Corso sul linguaggio SQL Corso sul linguaggio SQL Modulo L2B (SQL) 2.1 Comandi sui database 1 Prerequisiti Introduzione ai DB Linguaggi per database Tipi fondamentali di dati 2 1 Introduzione In questa Unità introduciamo il linguaggio

Dettagli

SISTEMI INFORMATIVI AZIENDALI. introduzione ai sistemi informativi 1

SISTEMI INFORMATIVI AZIENDALI. introduzione ai sistemi informativi 1 SISTEMI INFORMATIVI AZIENDALI introduzione ai sistemi informativi 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione delle informazioni aziendali e' essenziale

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

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

Teoria sulle basi di dati

Teoria sulle basi di dati Teoria sulle basi di dati Introduzione alle basi di dati Una base di dati (database) può essere considerata come una raccolta di dati logicamente correlati, utilizzata per modellare una realtà. I dati

Dettagli

BASI DI DATI. basi di dati - introduzione ai sistemi informativi 1

BASI DI DATI. basi di dati - introduzione ai sistemi informativi 1 BASI DI DATI basi di dati - introduzione ai sistemi informativi 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione delle informazioni aziendali e' essenziale

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

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

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

Linguaggio SQL. Structured Query Language

Linguaggio SQL. Structured Query Language Linguaggio SQL Structured Query Language Creato negli anni 70 presso IBM Inizialmente solo linguaggio di interrogazione Ora linguaggio di riferimento per DB relazionali Standardizzato grazie al lavoro

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

SQL IL LINGUAGGIO DI INTERROGAZIONE

SQL IL LINGUAGGIO DI INTERROGAZIONE SQL IL LINGUAGGIO DI INTERROGAZIONE SQL! Originato da SEQUEL-XRM e System-R (1974-1977) dell IBM! Significato originario Structured Query Language! Standard de facto! Attuale standard ANSI/ISO è SQL:1999

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

Join in SQL (primo modo) Informatica. Tabella Dipartimento. Interrogazione 4a. Interrogazione 4b. Interrogazione 4a

Join 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

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

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

SQL (STRUCTURED QUERY LANGUAGE)

SQL (STRUCTURED QUERY LANGUAGE) SQL (STRUCTURED QUERY LANGUAGE) Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan SQL DDL Data Definition Language DML Data Manipulation Language DCL Data Control Language DDL Obiettivo: Definire la struttura

Dettagli

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database Per comprendere al meglio cosa sia un database, dobbiamo prima introdurre il concetto di

Dettagli

SQL Laboratorio di Basi di Dati a.a. 2002/2003

SQL Laboratorio di Basi di Dati a.a. 2002/2003 1 SQL Laboratorio di Basi di Dati a.a. 2002/2003 dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 10-12 2 Cos'è SQL? Linguaggio di riferimento per le basi di dati relazionali

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

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

DDL DML. Tipi di linguaggi per basi di dati. Si distinguono due categorie:

DDL DML. Tipi di linguaggi per basi di dati. Si distinguono due categorie: Tipi di linguaggi per basi di dati Si distinguono due categorie: DDL DML Linguaggi di definizione dei dati o data definition languages: utilizzati per definire gli schemi logici, esterni e fisici e le

Dettagli

Elementi di Algebra Relazionale

Elementi 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

Basi di dati. SQL: concetti base

Basi di dati. SQL: concetti base Basi di dati SQL: concetti base SQL originariamente "Structured Query Language", ora "nome proprio" linguaggio con varie funzionalità: contiene sia il DDL sia il DML ne esistono varie versioni vediamo

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

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

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

Laboratorio di Basi di Dati

Laboratorio di Basi di Dati Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 1 SQL SQL (Structured Query Language) è stato definito nel 1973 ed è oggi il linguaggio più diffuso per i DBMS relazionali. Sono stati proposti

Dettagli

Elaborazione Automatica dei Dati. SQL come Query Language. Enrico Cavalli. Anno Accademico 2012-2013. Il linguaggio SQL

Elaborazione Automatica dei Dati. SQL come Query Language. Enrico Cavalli. Anno Accademico 2012-2013. Il linguaggio SQL Elaborazione Automatica dei Dati SQL come Query Language Enrico Cavalli Anno Accademico 2012-2013 Il linguaggio SQL SQL = Structured Query Language Diverse versioni del linguaggio gli standard ANSI: SQL,

Dettagli

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

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

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

Il 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

Dettagli

ISTITUTO STATALE D ISTRUZIONE SUPERIORE FERRARIS - BRUNELLESCHI EMPOLI

ISTITUTO STATALE D ISTRUZIONE SUPERIORE FERRARIS - BRUNELLESCHI EMPOLI ISTITUTO STATALE D ISTRUZIONE SUPERIORE FERRARIS - BRUNELLESCHI EMPOLI Anno scolastico 2014/2015 Classe: 5^A inf Prof.ssa C. Lami Prof. S. Calugi Materia: INFORMATICA GENERALE, APPLICAZIONI TECNICO SCIENTIFICHE

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

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

Informatica per le discipline umanistiche 2 lezione 10

Informatica 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

Dettagli

Decomposizione senza perdita. Decomposizione senza perdita. Conservazione delle dipendenze. Conservazione delle dipendenze

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

Dettagli

Algebra e Calcolo Relazionale

Algebra e Calcolo Relazionale Algebra e Calcolo Relazionale Università degli Studi del Sannio Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica CorsodiBasidiDati Accademico 2006/2007 docente: ing. Corrado Aaron Visaggio

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

Gabriele Orlandi BASI DI DATI Database Informatica Dispense

Gabriele Orlandi BASI DI DATI Database Informatica Dispense Gabriele Orlandi BASI DI DATI Database Informatica Dispense INTRODUZIONE Una base di dati è una collezione di dati (fatti noti) che ha le seguenti proprietà: - rappresenta un aspetto del mondo reale (Universo

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Laboratorio di Informatica Corso di Laurea Interfacoltà in Biotecnologie Lezione 3: Basi di Dati Lucido 1 Scopo della lezione Definire cos è una base di dati e un sistema di gestione della base di dati

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

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

Appunti di. Basi di Dati. Rosario Terranova. v 1.0.2. http://rosarioterranova.com/

Appunti di. Basi di Dati. Rosario Terranova. v 1.0.2. http://rosarioterranova.com/ Appunti di Basi di Dati Rosario Terranova v 1.0.2 http://rosarioterranova.com/ Sommario Introduzione alle Basi di dati... 3 Importanza dei Dabase... 3 Sistema di gestione di basi di dati (DataBase Management

Dettagli

Il linguaggio SQL: le basi. Versione elettronica: SQLa-basi.pdf

Il linguaggio SQL: le basi. Versione elettronica: SQLa-basi.pdf Il linguaggio SQL: le basi Versione elettronica: SQLa-basi.pdf SQL: caratteristiche generali SQL (Structured Query Language) è il linguaggio standard de facto per DBMS relazionali, che riunisce in sé funzionalità

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

Linguaggio SQL. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Linguaggio SQL. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Linguaggio SQL Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni SQL: caratteristiche generali SQL (Structured Query Language) è il linguaggio standard de facto per DBMS relazionali, che

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

ESEMPI DI QUERY SQL. Esempi di Query SQL Michele Batocchi AS 2012/2013 Pagina 1 di 7

ESEMPI DI QUERY SQL. Esempi di Query SQL Michele Batocchi AS 2012/2013 Pagina 1 di 7 ESEMPI DI QUERY SQL Dati di esempio... 2 Query su una sola tabella... 2 Esempio 1 (Ordinamento)... 2 Esempio 2 (Scelta di alcune colonne)... 3 Esempio 3 (Condizioni sui dati)... 3 Esempio 4 (Condizioni

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

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

Basi di dati SQL. Standardizzazione di SQL. Linguaggi di Interrogazione: SQL. Prof.Angela Bonifati

Basi di dati SQL. Standardizzazione di SQL. Linguaggi di Interrogazione: SQL. Prof.Angela Bonifati Basi di dati Linguaggi di Interrogazione: SQL Prof.Angela Bonifati 1 SQL Il nome stava per Structured Query Language Più che un semplice linguaggio di query: si compone di una parte DDL e di una DML DDL:

Dettagli

Linguaggio SQL: fondamenti. Basi di dati. Elena Baralis Pag. 1. Linguaggio SQL: fondamenti. Sistemi informativi. Introduzione

Linguaggio SQL: fondamenti. Basi di dati. Elena Baralis Pag. 1. Linguaggio SQL: fondamenti. Sistemi informativi. Introduzione Sistemi informativi Istruzione : fondamenti Interrogazioni nidificate Operatori insiemistici Istruzioni di aggiornamento Gestione delle tabelle 2 al linguaggio SQL Istruzioni del linguaggio Notazione 4

Dettagli

Istruzioni DML di SQL

Istruzioni DML di SQL Istruzioni DML di SQL Pag. 99 par.4 1 Sintassi: Costrutto: INSERT INTO (Inserimento di dati in tabelle) INSERT INTO [(, ,, )] VALUES (, ,

Dettagli

Basi di Dati e Sistemi Informativi. Structured Query Language

Basi di Dati e Sistemi Informativi. Structured Query Language Basi di Dati e Sistemi Informativi Structured Query Language Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale SQL come DDL e DML SQL non è solo un linguaggio di interrogazione Linguaggio

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

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

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

A.S. 2014/2015- Programma svolto di INFORMATICA ITCG E. Fermi Tivoli classe V C SIA. Programma svolto di. Informatica. classe VC S.I.A a.s.

A.S. 2014/2015- Programma svolto di INFORMATICA ITCG E. Fermi Tivoli classe V C SIA. Programma svolto di. Informatica. classe VC S.I.A a.s. Programma svolto di Informatica classe VC S.I.A a.s. 2014/2015 MODULO 1 I SISTEMI OPERATIVI U.D. 1 Organizzazione dei Sistemi Operativi U.D. 2 Struttura e funzionamento di un Sistema Operativo U.D. 3 Tipi

Dettagli