Fondamenti di Informatica e Programmazione

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Fondamenti di Informatica e Programmazione"

Transcript

1 Fondamenti di Informatica e Programmazione Prof. G ianni D Angelo giadangelo@unisa.it A. A. 2018/ 19

2 Le Origini di SQL Principali Versioni Anni SEQUEL Structured English QUEry Language Sviluppato da R. F. Boyce e D. Chamberlin Accesso ai dati memorizzati nei database implementati mediante System R di IBM SQL-86 [Structured Query Language] Prima standardizzazione ANSI (American National Standards Institute) SQL 1 / SQL-89 SQL 2 / SQL-92 SQL 3 / SQL:1999

3 Concetti Introduttivi 1/3 SQL permette di manipolare i dati, interrogare un database relazionale e definirne/modellarne la struttura È considerato uno degli standard principali per la manipolazione dei dati in database relazionali Con SQL possiamo quindi interagire con la base di dati ed ottenere le informazioni in essa presenti Eventualmente specificando filtri e condizioni

4 Concetti Introduttivi 2/3 Modalità di utilizzo del linguaggio SQL: Interattiva Si interagisce interattivamente con la base di dati, mediante il linguaggio SQL Compilativa SQL può essere utilizzato per mezzo di un linguaggio ospite, detto host (ad es., un linguaggio di programmazione) Nel linguaggio host vengono appropriatamente immerse le istruzioni SQL

5 Concetti Introduttivi 3/3 SQL NON è un linguaggio di programmazione convenzionale (come, ad esempio, Java, C, C++, ecc.), ma è un linguaggio dichiarativo Mediante SQL infatti è possibile specificare «cosa fare» e non «come fare» Fornisce maggiore astrazione rispetto ai linguaggi di programmazione

6 Cosa è possibile fare con SQL? Creare nuove tabelle nel database Cancellare tabelle dal database Eseguire interrogazioni su una base di dati Reperire dati da una base di dati Inserire e aggiornare record Ecc.

7 Convenzioni sul Linguaggio Convenzioni sul Linguaggio utilizzate nelle Slide Tabella Entità del modello E-R Campo/Colonna Attributo del modello E-R Comandi riportati in MAIUSCOLO E GRASSETTO SQL non fa differenza se non per i valori nei campi della tabella (entità) Nomi degli oggetti (tabelle, campi, ecc.) composti da lettere, numeri e carattere underscore (_) Riportati in minuscolo e corsivo Primo carattere deve essere una lettera o un underscore

8 Cosa è possibile fare con SQL? Creare nuove tabelle nel database Cancellare tabelle dal database Eseguire interrogazioni su una base di dati Reperire dati da una base di dati Inserire e aggiornare record Ecc.

9 Creazione di una Tabella 1/3 Sintassi SQL per la creazione di una tabella CREATE TABLE nome_tabella ( nome_campo1 TIPO_CAMPO1 VINCOLI_CAMPO1, nome_campo2 TIPO_CAMPO2 VINCOLI_CAMPO2,... nome_campon TIPO_CAMPON VINCOLI_CAMPON )

10 Creazione di una Tabella 2/3 Principali tipi dei valori che un campo può assumere Stringhe di caratteri VARCHAR(N) N indica la dimensione della stringa Esempio VARCHAR(20) Stringa di 20 caratteri TEXT Valori numerici INT FLOAT (numero in virgola mobile) Date e Orari DATE TIME TIMESTAMP I valori vanno specificati tra apici o virgolette

11 Creazione di una Tabella 2/3 Esempio CREATE TABLE studente ( matricola VARCHAR(10) PRIMARY KEY, nome VARCHAR(20) NOT NULL, cognome VARCHAR(20) NOT NULL, data_nascita DATE )

12 Creazione di una Tabella 3/3 Esempio CREATE TABLE studente ( matricola VARCHAR(10) PRIMARY KEY, nome VARCHAR(20) NOT NULL, cognome VARCHAR(20) NOT NULL, data_nascita DATE ) Creazione della tabella studente (inizialmente vuota) con i seguenti campi matricola Tipo: Stringa di 10 caratteri (VARCHAR(10)) Attributo Chiave (PRIMARY KEY) cognome e nome Tipo: Stringhe di 20 caratteri (VARCHAR(20)) Non sono ammessi valori nulli (NOT NULL) data_nascita Tipo: Data (DATE)

13 Creazione di una Tabella 3/3 Esempio CREATE TABLE studente ( matricola VARCHAR(10) PRIMARY KEY, nome VARCHAR(20) NOT NULL, cognome VARCHAR(20) NOT NULL, data_nascita DATE ) Tabella studente matricola nome cognome data_nascita

14 Cosa è possibile fare con SQL? Creare nuove tabelle nel database Cancellare tabelle dal database Eseguire interrogazioni su una base di dati Reperire dati da una base di dati Inserire e aggiornare record Ecc.

15 Cancellazione di una Tabella Sintassi SQL per la cancellazione di una tabella dal database selezionato DROP TABLE nome_tabella Esempio DROP TABLE studente

16 Cosa è possibile fare con SQL? Creare nuove tabelle nel database Cancellare tabelle dal database Eseguire interrogazioni su una base di dati Reperire dati da una base di dati Inserire e aggiornare record Ecc.

17 SQL e Tavola CRUD SQL è in grado di eseguire query (interrogazioni) al database ed operazioni di aggiornamento e cancellazione di record nelle tabelle SQL soddisfa la tavola di operazioni, denominata CRUD CRUD CREATE READ UPDATE DELETE

18 Tavola CRUD CRUD CREATE READ UPDATE DELETE

19 Tavola CRUD CRUD CREATE CREATE Inserire nuovi record in tabelle READ Leggere e ottenere dati dal database UPDATE Aggiornare record nel database DELETE Cancellare record dal database READ UPDATE DELETE

20 Tavola CRUD CRUD CREATE CREATE Inserire nuovi record in tabelle READ Leggere e ottenere dati dal database UPDATE Aggiornare record nel database DELETE Cancellare record dal database READ UPDATE DELETE

21 Inserimento di un Record 1/2 Sintassi SQL per l inserimento di un record in una tabella INSERT INTO nome_tabella ( nome_campo1, nome_campo2,... nome_campon ) VALUES ( valore1, valore2,... valoren )

22 Inserimento di un Record 2/2 Sintassi SQL per l inserimento di un record in una tabella Esempio INSERT INTO studente ( matricola, nome, cognome, data_nascita ) VALUES ( 00001, Mario, Rossi, 1990/04/10 )

23 Inserimento di un Record 2/2 Esempio studente matricola nome cognome data_nascita (Tabelle inizialmente vuota)

24 Inserimento di un Record 2/2 Esempio Esecuzione Istruzione SQL INSERT INTO studente ( matricola, nome, cognome, data_nascita ) VALUES ( 00001, Mario, Rossi, 1990/04/10 ) studente matricola nome cognome data_nascita (Tabelle inizialmente vuota)

25 Inserimento di un Record 2/2 Esempio studente matricola nome cognome data_nascita studente matricola nome cognome data_nascita Mario Rossi 1990/04/10 (Tabella dopo l inserimento del record)

26 Tavola CRUD CRUD CREATE READ CREATE Inserire nuovi record in tabelle READ Leggere e ottenere dati dal database UPDATE Aggiornare record nel database DELETE Cancellare record dal database UPDATE DELETE

27 Interrogazione 1/4 Sintassi SQL per l operazione di interrogazione (query) al database SELECT nome_campo1,..., nome_campon FROM tabella1,..., tabellan WHERE condizioni

28 Interrogazione 2/4 SELECT nome_campo1,..., nome_campon FROM tabella1,..., tabellan WHERE condizioni SELECT Specifica le colonne (attributi) che appariranno nel risultato dell interrogazione FROM Specifica le tabelle su cui verrà eseguita l interrogazione WHERE [Clausola Opzionale] Specifica una o più condizioni, mediante il quale i record devono essere filtrati nei risultati dell interrogazione

29 Interrogazione 3/4 Esempio 1 SELECT nome FROM studente matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella: studente

30 Interrogazione 3/4 Esempio 1 SELECT nome FROM studente matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella: studente nome Mario Giovanni Mario

31 Interrogazione 3/4 Esempio 1 SELECT nome FROM studente matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella: studente nome Mario Giovanni Mario Risultato dell interrogazione

32 Interrogazione 3/4 Esempio 2 SELECT cognome FROM studente matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella: studente cognome Rossi Gialli Blu

33 Interrogazione 3/4 Esempio 3 SELECT * FROM studente matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella: studente Risultato dell interrogazione matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05

34 Interrogazione 3/4 Esempio 3 SELECT * FROM studente L asterisco * permette di selezionare tutti gli attributi matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella: studente Risultato dell interrogazione matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05

35 Interrogazione 4/4 La Clausola WHERE 1/20 La clausola WHERE può essere utilizzata per diversi scopi durante un interrogazione (condizioni di ricerca) Comparazione Vengono ricercati record, comparando due espressioni Intervallo Vene verificato se un valore specificato rientra in un dato intervallo Parola chiave: BETWEEN Pattern Matching Viene verificato se una espressione corrisponde ad un pattern di stringa specificato (esempi nelle prossime slide) Parola chiave: LIKE Valori NULLI Viene verificato se una certa espressione restituisce un valore NULLO Parole chiavi: IS NULL

36 Interrogazione 4/4 La Clausola WHERE 1/20 Operatori per la Comparazione Operatore SQL Descrizione = Uguaglianza (Uguale a) <> Disuguaglianza (Diverso da) < Minore > Maggiore <= Minore o Uguale >= Maggiore o Uguale

37 Interrogazione 4/4 La Clausola WHERE 1/21 Operatori Logici Operatore SQL AND OR NOT Descrizione Operatore AND Operatore OR Operatore NOT

38 Interrogazione 4/4 La Clausola WHERE 2/21 Esempio 4 SELECT nome FROM studente WHERE nome = Mario matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella: studente nome Mario Mario

39 Interrogazione 4/4 La Clausola WHERE 3/21 Esempio 5 SELECT nome, cognome FROM studente WHERE nome = Mario matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella: studente nome Mario Mario cognome Rossi Blu

40 Interrogazione 4/4 La Clausola WHERE 4/21 Esempio 6 SELECT * FROM studente WHERE nome = Mario matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella: studente matricola nome cognome data_nascita Mario Rossi 1990/04/ Mario Blu 1990/02/05

41 Interrogazione 4/4 La Clausola WHERE 5/21 Esempio 7 Tabella: cliente SELECT nome, cognome FROM cliente WHERE citta = Salerno clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli nome Silvio Maria cognome Blu Azzurro

42 Interrogazione 4/4 La Clausola WHERE 6/21 Esempio 8 Tabella: cliente clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli SELECT nome, cognome FROM cliente WHERE citta = Salerno AND cap = nome Silvio cognome Blu

43 Interrogazione 4/4 La Clausola WHERE 7/21 Esempio 9 SELECT prodid FROM giocattolo WHERE prezzo >= 20 AND prezzo <= 40 Tabella: giocattolo prodid descrizione prezzo 2504 Peluche Macchinina Pista Bambola 30 prodid

44 Interrogazione 4/4 La Clausola WHERE 8/21 Esempio 10 SELECT prodid FROM giocattolo WHERE prezzo <= 20 OR prezzo > 30 Tabella: giocattolo prodid descrizione prezzo 2504 Peluche Macchinina Pista Bambola 30 prodid

45 Interrogazione 4/4 La Clausola WHERE 9/21 Esempio 11 SELECT prodid FROM giocattolo WHERE prezzo BETWEEN 20 AND 45 Tabella: giocattolo prodid descrizione prezzo 2504 Peluche Macchinina Pista Bambola 30 prodid

46 Interrogazione 4/4 La Clausola WHERE 10/21 Esempio 12 Tabella: cliente clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli SELECT clienteid, nome, cognome FROM cliente WHERE citta IN ( Salerno, Baronissi )

47 Interrogazione 4/4 La Clausola WHERE 10/21 Esempio 12 Tabella: cliente clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli SELECT clienteid, nome, cognome FROM cliente WHERE citta IN ( Salerno, Baronissi ) Con la clausola IN, viene verificato se il valore, di un campo specificato (in questo esempio, il campo citta), appartiene all insieme indicato (nell esempio, l insieme è costituito da due elementi: Salerno e Baronissi )

48 Interrogazione 4/4 La Clausola WHERE 10/21 Esempio 12 Tabella: cliente clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli SELECT clienteid, nome, cognome FROM cliente WHERE citta IN ( Salerno, Baronissi ) clienteid nome cognome 52 Silvio Blu 58 Maria Azzurro 60 Luigi Magenta

49 Interrogazione 4/4 La Clausola WHERE 11/21 Esempio 13 Tabella: cliente clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli SELECT clienteid, nome, cognome FROM cliente WHERE citta IN ( Eboli, Baronissi )

50 Interrogazione 4/4 La Clausola WHERE 11/21 Esempio 13 Tabella: cliente clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli SELECT clienteid, nome, cognome FROM cliente WHERE citta IN ( Eboli, Baronissi ) clienteid nome cognome 60 Luigi Magenta 61 Giorgio Viola

51 Interrogazione 4/4 La Clausola WHERE 12/21 In SQL le stringhe sono racchiuse tra apici (ad esempio, ciao ) L operatore LIKE è utilizzato per il pattern matching nelle stringhe, ovvero, per l identificazione di stringhe il cui schema è specificato Esempi di pattern (schemi) di ricerca 1. «tutte le stringhe che iniziano con la sottostringa E» Sintassi SQL: LIKE E% 2. «tutte le stringhe che finiscono con la sottostringa ire» Sintassi SQL: LIKE %ire 3. «tutte le stringhe che contengono la sottostringa mare» Sintassi SQL: LIKE %mare% 4. «tutte le stringhe Cas_ in cui l ultimo carattere può essere qualsiasi» Sintassi SQL: LIKE Cas_ 5. «tutte le stringhe che contengono la sottostringa m_re, dove il secondo carattere può essere qualsiasi» Sintassi SQL: LIKE %m_re%

52 Interrogazione 4/4 La Clausola WHERE 13/21 Esempio 14 Tabella: cliente SELECT clienteid, nome, cognome FROM cliente WHERE nome LIKE Ma% clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli clienteid nome cognome 50 Mario Rossi 58 Maria Azzurro

53 Interrogazione 4/4 La Clausola WHERE 14/21 Esempio 15 Tabella: cliente SELECT nome, cognome FROM cliente WHERE nome LIKE %io clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli nome Mario Giulio Silvio Giorgio cognome Rossi Bianchi Blu Viola

54 Interrogazione 4/4 La Clausola WHERE 15/21 Esempio 16 Tabella: cliente SELECT cognome FROM cliente WHERE cognome LIKE %a% clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli cognome Bianchi Azzurro Magenta Viola

55 Interrogazione 4/4 La Clausola WHERE 16/21 Esempio 17 Tabella: cliente SELECT nome FROM cliente WHERE nome LIKE M%a clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli nome Maria

56 Interrogazione 4/4 La Clausola WHERE 17/21 Esempio 18 Tabella: cliente SELECT nome FROM cliente WHERE nome LIKE %g% clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli nome Giulio Luigi Giorgio

57 Interrogazione 4/4 La Clausola WHERE 18/21 Esempio 19 Tabella: cliente SELECT clienteid, nome, cognome FROM cliente WHERE cap LIKE 8412_ clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli clienteid nome cognome 52 Silvio Blu 58 Maria Azzurro

58 Interrogazione 4/4 La Clausola WHERE 19/21 Esempio 20 Tabella: cliente SELECT clienteid FROM cliente WHERE cap LIKE 84_2_ clienteid nome cognome cap citta 50 Mario Rossi Fisciano 51 Giulio Bianchi Fisciano 52 Silvio Blu Salerno 58 Maria Azzurro Salerno 60 Luigi Magenta Baronissi 61 Giorgio Viola Eboli clienteid

59 Interrogazione 4/4 La Clausola WHERE 20/21 Valori NULLI e NON NULLI Esempio 21 Tabella: auto SELECT autoid, marca, modello FROM auto WHERE immatricolazione IS NOT NULL autoid marca modello immatricolazione FIAT500_1 FIAT FIAT500L_1 FIAT 500L 2014 ALFAGIULIA_1 Alfa Romeo Giulia 2016 JEEPR_1 Jeep Renegade 2015 FIAT500_2 FIAT 500 NULL autoid marca modello FIAT500_1 FIAT 500 FIAT500L_1 FIAT 500L ALFAGIULIA_1 Alfa Romeo Giulia JEEPR_1 Jeep Renegade

60 Interrogazione 4/4 La Clausola WHERE 21/21 Valori NULLI e NON NULLI Esempio 22 Tabella: auto SELECT autoid FROM auto WHERE immatricolazione IS NULL autoid marca modello immatricolazione FIAT500_1 FIAT FIAT500L_1 FIAT 500L 2014 ALFAGIULIA_1 Alfa Romeo Giulia 2016 JEEPR_1 Jeep Renegade 2015 FIAT500_2 FIAT 500 NULL autoid FIAT500_2

61 Tavola CRUD CRUD CREATE READ CREATE Creare nuovi database Creare nuove Tabelle in database esistenti Inserire nuovi record in tabelle READ Leggere e ottenere dati dal database UPDATE Aggiornare record nel database DELETE Cancellare record dal database UPDATE DELETE

62 Aggiornamento di Record 1/3 Sintassi SQL per l aggiornamento di record in una tabella UPDATE nome_tabella SET nome_campo1 = nuovo_valore1, nome_campo2 = nuovo_valore2,... nome_campon = nuovo_valoren WHERE condizioni Le condizioni della clausola WHERE di UPDATE possono essere definite analogamente a come fatto per la clausola WHERE di SELECT (interrogazione)

63 Aggiornamento di Record 2/3 Esempio 1 UPDATE studente SET cognome = Magenta, WHERE nome = Mario matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 matricola nome cognome data_nascita Mario Magenta 1990/04/ Giovanni Gialli 1990/05/ Mario Magenta 1990/02/05

64 Aggiornamento di Record 3/3 Esempio 2 UPDATE studente SET nome = Aldo, WHERE matricola = matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 matricola nome cognome data_nascita Aldo Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05

65 Tavola CRUD CRUD CREATE READ CREATE Inserire nuovi record in tabelle READ Leggere e ottenere dati dal database UPDATE Aggiornare record nel database DELETE Cancellare record dal database UPDATE DELETE

66 Cancellazione di Record 1/4 Sintassi SQL per la cancellazione di record da una tabella DELETE FROM nome_tabella WHERE condizioni Se non viene specificata la clausola WHERE viene svuotata tutta la tabella DELETE FROM nome_tabella Le condizioni della clausola WHERE di DELETE possono essere definite analogamente a come fatto per la clausola WHERE di SELECT (interrogazione)

67 Cancellazione di Record 2/4 Esempio 1 DELETE FROM studente WHERE matricola = Tabella studente matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella studente dopo l esecuzione dell istruzione SQL matricola nome cognome data_nascita Mario Rossi 1990/04/ Mario Blu 1990/02/05

68 Cancellazione di Record 3/4 Esempio 2 DELETE FROM studente WHERE nome = Mario Tabella studente matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella studente dopo l esecuzione dell istruzione SQL matricola nome cognome data_nascita Giovanni Gialli 1990/05/02

69 Cancellazione di Record 3/4 Esempio 3 DELETE FROM studente WHERE nome = Giovanni OR cognome = Blu Tabella studente matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella studente dopo l esecuzione dell istruzione SQL matricola nome cognome data_nascita Mario Rossi 1990/04/10

70 Cancellazione di Record 4/4 Esempio 4 DELETE FROM studente matricola nome cognome data_nascita Mario Rossi 1990/04/ Giovanni Gialli 1990/05/ Mario Blu 1990/02/05 Tabella studente dopo l esecuzione dell istruzione SQL matricola nome cognome data_nascita

A.A. 2018/2019. Introduzione a SQL FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante

A.A. 2018/2019. Introduzione a SQL FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante A.A. 2018/2019 Introduzione a SQL Docente Prof. Raffaele Pizzolante FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE Le Origini di SQL Principali Versioni Anni 70 1986 SEQUEL Structured English QUEry Language

Dettagli

Fondamenti di Informatica A. A / 1 9

Fondamenti di Informatica A. A / 1 9 Fondamenti di Informatica Prof. Marco Lombardi A. A. 2 0 1 8 / 1 9 Concetti Introduttivi 1/2 SQL (Structured Query Language) permette di manipolare i dati, interrogare un database relazionale e modellarne

Dettagli

A.A. 2018/2019. Funzioni di Aggregazione e Raggruppamenti in SQL FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante

A.A. 2018/2019. Funzioni di Aggregazione e Raggruppamenti in SQL FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante A.A. 2018/2019 Funzioni di Aggregazione e Raggruppamenti in SQL Docente Prof. Raffaele Pizzolante FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE Le Funzioni di Aggregazione 1/10 Le funzioni di aggregazione

Dettagli

A.A. 2018/2019. Esercitazione 11. Strutturazione di Istruzioni in Linguaggio SQL. [ Possibili Soluzioni ] FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE

A.A. 2018/2019. Esercitazione 11. Strutturazione di Istruzioni in Linguaggio SQL. [ Possibili Soluzioni ] FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE A.A. 2018/2019 Esercitazione 11 Strutturazione di Istruzioni in Linguaggio SQL [ Possibili Soluzioni ] Docente Prof. Raffaele Pizzolante FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE Esercizio 1 Scrivere

Dettagli

Sistemi di Elaborazione delle Informazioni

Sistemi di Elaborazione delle Informazioni SCUOLA DI MEDICINA E CHIRURGIA Università degli Studi di Napoli Federico II Corso di Sistemi di Elaborazione delle Informazioni Dott. Francesco Rossi a.a. 2017/2018 1 Settima parte Interrogazione di una

Dettagli

A.A. 2018/2019. Esercitazione 12. Strutturazione di Istruzioni in Linguaggio SQL. [ Possibili Soluzioni ] FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE

A.A. 2018/2019. Esercitazione 12. Strutturazione di Istruzioni in Linguaggio SQL. [ Possibili Soluzioni ] FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE A.A. 2018/2019 Esercitazione 12 Strutturazione di Istruzioni in Linguaggio SQL [ Possibili Soluzioni ] Docente Prof. Raffaele Pizzolante FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE Esercizio 1 Scrivere

Dettagli

Caratteristiche dei linguaggi per Database

Caratteristiche dei linguaggi per Database IL LINGUAGGIO Caratteristiche dei linguaggi per Database I linguaggi per basi di dati relazionali possiedono i comandi per: definizione del data base; manipolazione dei dati; associazione tra tabelle diverse;

Dettagli

Manuale SQL. Manuale SQL - 1 -

Manuale SQL. Manuale SQL - 1 - Manuale SQL - 1 - Istruzioni DDL Creazione di una tabella : CREATE TABLE Il comando CREATE TABLE consente di definire una tabella del database specificandone le colonne, con il tipo di dati ad esse associate,

Dettagli

SISTEMI INFORMATIVI E TELEMEDICINA INFORMATICA MEDICA. 3. Panoramica su SQL Prof. Mauro Giacomini

SISTEMI INFORMATIVI E TELEMEDICINA INFORMATICA MEDICA. 3. Panoramica su SQL Prof. Mauro Giacomini SISTEMI INFORMATIVI E TELEMEDICINA INFORMATICA MEDICA 3. Panoramica su SQL Prof. Mauro Giacomini Sommario Introduzione Istruzione SELECT Tipi di Join Subquery Comandi DML Creazione delle tabelle Introduzione

Dettagli

SQL: le funzioni di aggregazione

SQL: le funzioni di aggregazione SQL: le funzioni di aggregazione funzioni predefinite che agiscono sui valori contenuti in insiemi di righe della tabella: Conteggi Somme Medie Massimi, minimi Funzione Count La funzione COUNT conta il

Dettagli

DDL (Data Definition Language) schemi DML (Data Manipulation Language) DQL (Data Query Language) DCL (Data Control Language)

DDL (Data Definition Language) schemi DML (Data Manipulation Language) DQL (Data Query Language) DCL (Data Control Language) o o o o o DDL (Data Definition Language): consente di creare e modificare schemi di database; DML (Data Manipulation Language): consente di inserire, modificare e gestire i dati memorizzati; DQL (Data

Dettagli

SQL quick reference. piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013)

SQL quick reference. piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013) SQL quick reference piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013) I tipi dei dati di SQL sono: delimitatori delle costanti: TEXT(n) stringa di caratteri

Dettagli

Select From Where...

Select From Where... Select From Where... SELECT Le colonne che saranno mostrate e in che ordine. Calcoli su colonne FROM La tabella o le tabelle usate dall interrogazione WHERE Condizione che deve essere soddisfatta dalle

Dettagli

Lezione 13. Il trattamento dei dati. database: il linguaggio SQL seconda parte. Proff. Valle Folgieri

Lezione 13. Il trattamento dei dati. database: il linguaggio SQL seconda parte. Proff. Valle Folgieri Lezione 13 Il trattamento dei dati database: il linguaggio SQL seconda parte Proff. Valle Folgieri Lez13 Trattamento dati. Database: il linguaggio SQL-seconda parte 1 SQL: azioni sui dati Nella scorsa

Dettagli

Lezione 12. Il trattamento dei dati. database: il linguaggio SQL seconda parte. Proff. Valle Folgieri

Lezione 12. Il trattamento dei dati. database: il linguaggio SQL seconda parte. Proff. Valle Folgieri Lezione 12 Il trattamento dei dati database: il linguaggio SQL seconda parte Proff. Valle Folgieri Lez13 Trattamento dati. Database: il linguaggio SQL-seconda parte 1 SQL: azioni sui dati Nella scorsa

Dettagli

Tabelle esempio: Impiegato/Dipartimento

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

Dettagli

Informatica Grafica. Basi di dati parte 2

Informatica Grafica. Basi di dati parte 2 Informatica Grafica Corso di Laurea in Ingegneria Edile Architettura Basi di dati parte 2 Michele Lombardi su materiale originario di Paolo Torroni Dipartimento di Elettronica, Informatica e Sistemistica

Dettagli

Structured. Language. Basi di Dati. Introduzione. DDL: Data Definition Language. Tipi di dato. Query. Modifica dei Dati

Structured. Language. Basi di Dati. Introduzione. DDL: Data Definition Language. Tipi di dato. Query. Modifica dei Dati Basi di Dati Matteo Longhi Structured Query Language Introduzione Standard creato nel 1976 da IBM Aggiornato (versione 2 nel 1992 (ANSI X3.135 e ISO 9075 Consente di: DDL: definire la struttura del DB

Dettagli

Stringhe di caratteri

Stringhe di caratteri Domini primitivi In SQL sono disponibili alcune famiglie di domini elementari attraverso le quali è possibile definire i domini di appartenenza dei campi. Stringhe di caratteri CHARACTER [VARYING] [(NumeroCaratteri)]

Dettagli

Corso di. Basi di Dati I. 7. Esercitazioni in SQL: Definizione e manipolazione dei dati

Corso di. Basi di Dati I. 7. Esercitazioni in SQL: Definizione e manipolazione dei dati Corso di Basi di Dati 7. Esercitazioni in SQL: Definizione e manipolazione dei dati A.A. 2016 2017 Collegarsi a MySQL, caricare e salvare basi di dati Per collegarsi a mysql, aprire un terminale e inserire

Dettagli

Laboratorio di Basi di Dati

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

Dettagli

Structured Query Language

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

Dettagli

I.I.S. G. COSSALI - ORZINUOVI DATABASE. Marzo 2017 Prof. Dario Tomasoni 1

I.I.S. G. COSSALI - ORZINUOVI DATABASE. Marzo 2017 Prof. Dario Tomasoni 1 I.I.S. G. COSSALI - ORZINUOVI DATABASE Marzo 2017 Prof. Dario Tomasoni 1 IMPOSTAZIONE 60 min = Database concetti + Esercizi; 10 min = pausa; 30 min = Linguaggio SQL; 30 min = Database prove LibreOffice

Dettagli

Corso di Basi di Dati A.A. 2015/2016

Corso di Basi di Dati A.A. 2015/2016 Corso di Laurea in Ingegneria Gestionale Sapienza Università di Roma Corso di Basi di Dati A.A. 2015/2016 - Esercizi Tiziana Catarci, Andrea Marrella Ultimo aggiornamento : 06/04/2016 Esercizio 1 Dare

Dettagli

Fondamenti di Informatica e Programmazione

Fondamenti di Informatica e Programmazione Fondamenti di Informatica e Programmazione Prof. G ianni D Angelo Email: giadangelo@unisa.it A. A. 2018/19 Dati e Basi di Dati 1/4 I dati sono importanti poiché costituiscono una risorsa aziendale La loro

Dettagli

SQL DDL. Create database. Alter database. Drop database

SQL DDL. Create database. Alter database. Drop database SQL In informatica, SQL (Structured Query Language) è un linguaggio standardizzato per database basati sul modello relazionale (RDBMS), progettato per le seguenti operazioni: creare e modificare schemi

Dettagli

Elena Baralis 2007 Politecnico di Torino 1

Elena Baralis 2007 Politecnico di Torino 1 Introduzione Istruzione INSERT Istruzione DELETE Istruzione UPDATE Linguaggio SQL: fondamenti 2 (1/3) Inserimento di tuple Cancellazione di tuple Modifica di tuple 4 (2/3) INSERT inserimento di nuove tuple

Dettagli

D B M G 2. Linguaggio SQL: fondamenti. Istruzioni di aggiornamento. Introduzione Istruzione INSERT Istruzione DELETE Istruzione UPDATE

D B M G 2. Linguaggio SQL: fondamenti. Istruzioni di aggiornamento. Introduzione Istruzione INSERT Istruzione DELETE Istruzione UPDATE Linguaggio SQL: fondamenti DB M B G Introduzione Istruzione INSERT Istruzione DELETE Istruzione UPDATE D B M G 2 DB M B G (1/3) Inserimento di tuple Cancellazione di tuple Modifica di tuple D B M G 4 (2/3)

Dettagli

Appunti su SQL. Query Language. Comando Select

Appunti su SQL. Query Language. Comando Select Appunti su SQL Query Language... 1 Comando Select... 1 Select con campi ordinati: order By... 3 Sintassi generale:... 3 Ordinamanto su PIU campi... 3 DML (Data Manipulation Language per inserimento e modifica

Dettagli

Manuale Comandi SQL SQL. Sito per esercitarsi (on line) SQL

Manuale Comandi SQL SQL. Sito per esercitarsi (on line) SQL Manuale Comandi SQL Sito per esercitarsi (on line)... 1 SQL... 1 Convenzioni e simboli usati... 2 Query Language... 2 Comando Select... 2 Order By:... 3 Sintassi generale:... 3 Ordinamanto su PIU campi...

Dettagli

Corso di. Basi di Dati I. 7. Esercitazioni in SQL: Definizione e manipolazione dei dati

Corso di. Basi di Dati I. 7. Esercitazioni in SQL: Definizione e manipolazione dei dati Corso di Basi di Dati 7. Esercitazioni in SQL: Definizione e manipolazione dei dati A.A. 2016 2017 Collegarsi a MySQL, caricare e salvare basi di dati Per collegarsi a mysql, aprire un terminale e inserire

Dettagli

Elena Baralis 2013 Politecnico di Torino 1

Elena Baralis 2013 Politecnico di Torino 1 Introduzione Istruzione INSERT Istruzione DELETE Istruzione UPDATE Linguaggio SQL: fondamenti D B M G 2 (1/3) Inserimento di tuple Cancellazione di tuple Modifica di tuple D B M G 4 (2/3) INSERT inserimento

Dettagli

PROGETTAZIONE DI DATABASE

PROGETTAZIONE DI DATABASE ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI PROGETTAZIONE DI DATABASE Manipolazione dei dati in SQL Lezione 12 Questa dispensa è rilasciata sotto la licenza Creative Common CC BY-NC-SA. Chiunque

Dettagli

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

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

Dettagli

SQL. Università degli Studi di Salerno. Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto

SQL. Università degli Studi di Salerno. Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto SQL Università degli Studi di Salerno Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto A.A. 2005/2006 Select La forma di select cui siamo arrivati

Dettagli

Metodi per la Gestione dei Dati (lezioni di laboratorio)

Metodi per la Gestione dei Dati (lezioni di laboratorio) Università degli Studi di Modena e Reggio Emilia Facoltà di Scienze della Comunicazione e dell Economia Corso di Laurea in Comunicazione e Marketing Anno Accademico 2005/06 Metodi per la Gestione dei Dati

Dettagli

QL (Query Language) Alice Pavarani

QL (Query Language) Alice Pavarani QL (Query Language) Alice Pavarani QL Query Language Linguaggio di interrogazione dei dati, permette di: Interrogare la base di dati per estrarre informazioni Elaborare i dati Il risultato di un interrogazione

Dettagli

SQL. Lezione 1. Docente: Alberto Belussi

SQL. Lezione 1. Docente: Alberto Belussi LaboratoriodiBasidiDatieWeb Docente: Alberto Belussi Lezione 1 SQL Structured Query Language SQL è stato definito nel 1973 ed è oggi il linguaggio più diffuso per i DBMS relazionali Il linguaggio SQL è

Dettagli

Tipi numerici esatti Valori interi o con parte decimale di lunghezza prefissata

Tipi numerici esatti Valori interi o con parte decimale di lunghezza prefissata Domini Tipi numerici esatti Valori interi o con parte decimale di lunghezza prefissata numeric [(Precisione [,Scala])] decimal [(Precisione [,Scala])] integer smallint Precisione specifica il numero di

Dettagli

PRODOTTO CARTESIANO Caso Generale

PRODOTTO CARTESIANO Caso Generale PRODOTTO CARTESIANO Caso Generale Vincoli di integrità dei dati Un database non deve solamente memorizzare i dati, ma garantire che i dati memorizzati siano corretti; se i dati sono imprecisi o incoerenti,

Dettagli

PROGETTAZIONE DI DATABASE Linguaggio SQL

PROGETTAZIONE DI DATABASE Linguaggio SQL PROGETTAZIONE DI DATABASE Linguaggio SQL Modello Concettuale (Modellazione del mondo reale) Modello Logico (Definizione del tipo e del formato dei dati) Modello Fisico (Implementazione fisica su supporti

Dettagli

La connessione ai database MySQL tramite script PHP versione 5.5

La connessione ai database MySQL tramite script PHP versione 5.5 La connessione ai database MySQL tramite script PHP versione 5.5 Php è un linguaggio di scripting che estende le funzionalità del server Web, mentre MySQL è un programma server che si occupa della gestione

Dettagli

SQL. Università degli Studi di Salerno. Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto

SQL. Università degli Studi di Salerno. Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto SQL Università degli Studi di Salerno Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto A.A. 2007/2008 Interrogazioni con raggruppamento E possibile

Dettagli

Laboratorio di Basi di Dati

Laboratorio di Basi di Dati Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 2 Vincoli di integrità Proprietà che devono essere soddisfatte da ogni istanza della base di dati. Il soddisfacimento è definito rispetto al

Dettagli

Query SQL - singola tabella

Query SQL - singola tabella Query SQL - singola tabella Informatica@SEFA 07/08 - Lezione 9 Massimo Lauria http://massimolauria.net/courses/infosefa07/ Mercoledì, 6 Dicembre 07 Tabelle in SQL Tabelle nel

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

SQL STRUCTURED QUERY LANGUAGE

SQL STRUCTURED QUERY LANGUAGE SQL STRUCTURED QUERY LANGUAGE Il linguaggio SQL è un linguaggio di interrogazione per database progettato per leggere, modificare gestire dati memorizzati in un sistema basato sul modello relazionale creare

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

Corso di Basi di Dati

Corso di Basi di Dati Corso di Basi di Dati Il Linguaggio SQL Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/ Il Linguaggio SQL SQL (Structured Query Language) è il linguaggio di riferimento per le basi di dati

Dettagli

Query SQL - singola tabella

Query SQL - singola tabella Query SQL - singola tabella Informatica@SEFA 08/09 - Lezione Massimo Lauria http://massimolauria.net/courses/infosefa08/ Venerdì, 07 Dicembre 08 SQL Cos è SQL Linguaggio di

Dettagli

SQL Matteo Magnani, Danilo Montesi Università di Bologna SQL. Linguaggio di interrogazione per basi di dati relazionali

SQL Matteo Magnani, Danilo Montesi Università di Bologna SQL. Linguaggio di interrogazione per basi di dati relazionali SQL Linguaggio di interrogazione per basi di dati relazionali SQL Structured Query Language Linguaggio di interrogazione per basi di dati relazionali. Permette di comunicare con diversi sistemi tramite

Dettagli

Laboratorio di Basi di Dati e Multimedia

Laboratorio di Basi di Dati e Multimedia Laboratorio di Basi di Dati e Multimedia Laurea in Informatica Multimediale - A.A. 2006/07 Docente: Alessandra Di Pierro Email: dipierro@sci.univr.it Lezione 2 Vincoli intrarelazionali Proprietà che devono

Dettagli

Corso di Basi di Dati

Corso di Basi di Dati Corso di Basi di Dati Il Linguaggio SQL Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/ 1 Linguaggi per DBMS Il modello relazionale definisce i concetti generali ed i vincoli per modellare

Dettagli

Equivalenza di espressioni. Equivalenze. Equivalenze. Due espressioni sono equivalenti se: Atomizzazione delle selezioni σ F1 F2 (E) σ F1 (σ F2 (E))

Equivalenza di espressioni. Equivalenze. Equivalenze. Due espressioni sono equivalenti se: Atomizzazione delle selezioni σ F1 F2 (E) σ F1 (σ F2 (E)) Equivalenza di espressioni Due espressioni sono equivalenti se: E 1 R E 2 se E 1 (r = E 2 (r per ogni istanza r di R (equivalenza dipendente dallo schema E 1 E 2 se E 1 R E 2 per ogni schema R (equivalenza

Dettagli

Corso di Informatica Linguaggio SQL prima parte

Corso di Informatica Linguaggio SQL prima parte Corso di Informatica Linguaggio SQL prima parte Anno Accademico 2018-2019 Linguaggio SQL (Structured Query Language) 2 Il linguaggio SQL Un linguaggio per DBMS (DataBase Management System) deve permettere

Dettagli

Soluzione esercitazione 01

Soluzione esercitazione 01 Soluzione esercitazione 01 Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SolEse01.pdf Sistemi Informativi L-A Videonoleggio - caso A: tabella

Dettagli

Database 2 a puntata. Pablo Genova I. I. S. Angelo Omodeo Mortara Indirizzo Tecnico-Economico A. S.

Database 2 a puntata. Pablo Genova I. I. S. Angelo Omodeo Mortara Indirizzo Tecnico-Economico A. S. Database 2 a puntata Pablo Genova gallini.genova@gmail.com I. I. S. Angelo Omodeo Mortara Indirizzo Tecnico-Economico A. S. 2017 2018 Esempi... dal modello relazionale al codice sql MODELLO RELAZIONALE

Dettagli

Linguaggio SQL: fondamenti

Linguaggio SQL: fondamenti Introduzione Istruzione INSERT Istruzione DELETE Istruzione UPDATE 2 2007 Politecnico di Torino 1 (1/3) Inserimento di tuple Cancellazione di tuple Modifica di tuple 4 2007 Politecnico di Torino 2 (2/3)

Dettagli

Sistemi di Elaborazione delle Informazioni

Sistemi di Elaborazione delle Informazioni SCUOLA DI MEDICINA E CHIRURGIA Università degli Studi di Napoli Federico II Corso di Sistemi di Elaborazione delle Informazioni Dott. Francesco Rossi a.a. 2017/2018 1 Sesta parte Interrogazione di una

Dettagli

Laboratorio di Basi di Dati

Laboratorio di Basi di Dati Laboratorio di Basi di Dati Esercitazione PostgreSQL Dopo aver lanciato il client grafico pgadmin III di PostgreSQL svolgere le operazioni descritte nel seguito, tenendo presenti i suggerimenti forniti

Dettagli

OBIETTIVI DELL'ESERCITAZIONE

OBIETTIVI DELL'ESERCITAZIONE Laurea in Ingegneria Informatica - Università di Roma "La Sapienza" Corso di Basi di Dati - A.A. 2005/2006 Esercitazione su SQL Giuseppe De Giacomo Domenico Lembo OBIETTIVI DELL'ESERCITAZIONE Creare schema

Dettagli

Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL: fondamenti. Il linguaggio SQL

Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL: fondamenti. Il linguaggio SQL : fondamenti Linguaggio per gestire le basi di dati relazionali Structured Query Language SQL possiede istruzioni per definire lo schema di una base di dati relazionale leggere e scrivere i dati definire

Dettagli

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

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

Dettagli

BASI di DATI. SQL: concetti fondamentali

BASI di DATI. SQL: concetti fondamentali BASI di DATI SQL: concetti fondamentali 1 SQL-92 >> Sommario Concetti Fondamentali Introduzione Creazione ed eliminazione di bd Creazione ed eliminazione di tabelle Inserimenti di ennuple Interrogazioni

Dettagli

SQL /10/2016 Basi di dati - SQL 1

SQL /10/2016 Basi di dati - SQL 1 SQL 24-27/10/2016 Basi di dati - SQL 1 Esercitazioni pratiche Per SQL è possibile (e fondamentale) svolgere esercitazioni pratiche Verranno anche richieste copme condizione per svolgere le prove parziali

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

Dettagli

Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2007/8. Il trattamento dei dati

Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2007/8. Il trattamento dei dati Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2007/8 Il trattamento dei dati database: il linguaggio SQL prima parte Prof. Valle D.ssa Folgieri Lez8 8.11.07 Trattamento dati. Database: il linguaggio

Dettagli

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

Corso di Laurea in Ingegneria Informatica Fondamenti di Informatica II Modulo Basi di dati a.a Corso di Laurea in Ingegneria Informatica Fondamenti di Informatica II Modulo Basi di dati a.a. 2013-2014 Docente: Gigliola Vaglini Docente laboratorio: Francesco Pistolesi Lezione 3 Structured Query Language

Dettagli

DATABASE PER IL WEB. Programmazione Web 1

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

Dettagli

Corso sul linguaggio SQL

Corso sul linguaggio SQL Corso sul linguaggio SQL Modulo L2B (SQL) 3 - Aggiornamento dati 1 Prerequisiti Conoscenza tipi di dato in SQL Creare e gestire tabelle e indici 2 1 Introduzione In questa Unità descriviamo la parte di

Dettagli

ESERCITAZIONE: Fornitore-Fornisce-Articolo

ESERCITAZIONE: Fornitore-Fornisce-Articolo ESERCITAZIONE: Fornitore--Articolo PROGETTAZIONE CONCETTUALE Sia dato il diagramma ER rappresentativo di una certa realtà di interesse Cognome CodF Nome DataN CodA Descrizione Prezzo Fornitore N N E Fornito

Dettagli

Sommario. Introduzione... 13

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

Dettagli

Access. P a r t e t e r z a

Access. P a r t e t e r z a Access P a r t e t e r z a 1 Query: Concetti generali (2) Query 1 Tabella Query 2 Le query rappresentano viste differenti sul DB (possono coinvolgere una o più tabelle) 2 Creazione (1) Diverse possibilità,

Dettagli

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

Corso di Laurea in Ingegneria Informatica Fondamenti di Informatica II Modulo Basi di dati a.a Corso di Laurea in Ingegneria Informatica Fondamenti di Informatica II Modulo Basi di dati a.a. 2012-2013 2013 Docente: Gigliola Vaglini Docenti laboratorio: Francesco Pistolesi, Antonio Virdis Lezione

Dettagli

Laboratorio di Sistemi Informativi

Laboratorio di Sistemi Informativi Laboratorio di Sistemi Informativi Corso di Laurea in Informatica - A. A. 2006-2007 Modifica degli schemi Inserimento, cancellazione e modifica dei dati Donatella Merlini Dipartimento di Sistemi e Informatica

Dettagli

Corso di Access. Prerequisiti. Modulo L2 A (Access) Le query

Corso di Access. Prerequisiti. Modulo L2 A (Access) Le query Corso di Access Modulo L2 A (Access) 2.3.1 Le query 1 Prerequisiti Concetto di database relazionale Utilizzo elementare del computer Concetti fondamentali di basi di dati Interrogazione di un DB 2 1 Introduzione

Dettagli

A. Veneziani Linguaggio SQL

A. Veneziani Linguaggio SQL A. Veneziani Linguaggio SQL Creazione di un DB istruzione CREATE DATABASE Per creare un nuovo database (DB), tramite il linguaggio SQL, si utilizza l istruzione SQL: CREATE DATABASE ; è possibile

Dettagli

(Lezione SQL 1) Barbara Di Camillo Dipartimento di Ingegneria dell Informazione. Università degli Studi di Padova

(Lezione SQL 1) Barbara Di Camillo Dipartimento di Ingegneria dell Informazione. Università degli Studi di Padova Università degli Studi di Padova Corso di Laurea Magistrale in Bioingegneria A.A. 2010-20112011 INFORMATICA SANITARIA (Lezione SQL 1) Barbara Di Camillo Dipartimento di Ingegneria dell Informazione Università

Dettagli

Uno dei principali motivi del successo delle basi di dati: è diventato uno standard

Uno dei principali motivi del successo delle basi di dati: è diventato uno standard SQL [1] Concetti essenziali di SQL 2 Il linguaggio SQL Uno dei principali motivi del successo delle basi di dati: è diventato uno standard Fornisce un interfaccia dichiarativa di alto livello, permettendo

Dettagli

Principi di Progettazione del Software a.a Il linguaggio SQL. Il Linguaggio SQL

Principi di Progettazione del Software a.a Il linguaggio SQL. Il Linguaggio SQL Principi di Progettazione del Software a.a. 2017-2018 Ing. Università del Salento Il Linguaggio SQL Due componenti principali: Ø DDL (Data Definition Language) Contiene i costrutti necessari per la creazione/modifica

Dettagli

A.A. 2018/2019. Simulazione. Simulazione Terza Prova Intracorso FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante

A.A. 2018/2019. Simulazione. Simulazione Terza Prova Intracorso FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante A.A. 2018/2019 Simulazione Simulazione Terza Prova Intracorso Docente Prof. Raffaele Pizzolante FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE Punteggio e Valutazione Domande a Risposte Aperta su Aspetti Teorici

Dettagli

I comandi del linguaggio DDL (Data Definition Language): CREATE E ALTER

I comandi del linguaggio DDL (Data Definition Language): CREATE E ALTER Caratteristiche generali del linguaggio SQL Il linguaggio SQL è il linguaggio usato per la gestione dei database relazionali, cioè dei database creati con un DBMS di tipo relazionale. Esso nacque nella

Dettagli

Linguaggio SQL: fondamenti D B M G

Linguaggio SQL: fondamenti D B M G Linguaggio SQL: fondamenti D B M G Introduzione Introduzione al linguaggio SQL Istruzioni del linguaggio Notazione D B M G 2 Il linguaggio SQL Linguaggio per gestire le basi di dati relazionali Structured

Dettagli

Informatica documentale Laurea in Scienze della Comunicazione Prova scritta del 25 giugno Cognome e nome: Matricola:

Informatica documentale Laurea in Scienze della Comunicazione Prova scritta del 25 giugno Cognome e nome: Matricola: Informatica documentale Laurea in Scienze della Comunicazione Prova scritta del 25 giugno 2012 Cognome e nome: Matricola: Parte prima Domanda 1 Domanda 2 Domanda 3 Totale Istruzioni: È vietato portare

Dettagli

Linguaggio SQL. Prof. Giuseppe Tandoi

Linguaggio SQL. Prof. Giuseppe Tandoi Caratteristiche generali SQL è uno strumento per organizzare gestire recuperare dati memorizzati in DataBase organizzati su base Relazionale. Caratteristiche generali SQL è l'acronimo di Structured Query

Dettagli

Lezioni di Laboratorio sui Data Base

Lezioni di Laboratorio sui Data Base Lezioni di Laboratorio sui Data Base Informatica per l'impresa Docente Tutor: Dott. Gianluigi Roveda OBIETTIVO: Rivedere come attività di laboratorio le query di tipo select scritte in SQL ma con le variazioni

Dettagli

ESERCITAZIONI ACCESS

ESERCITAZIONI ACCESS ESERCITAZIONI ACCESS MS Access 2000 Struttura di riferimento: Studente (Matricola, Cognome, Nome) Esame (Matricola, Materia, Voto, Data) CREARE LE TABELLE IN SQL: Create table STUDENTE ( matricola char(6)

Dettagli

V. Moriggia Modelli di Base Dati. Modelli di Base Dati. a.a. 2001/

V. Moriggia Modelli di Base Dati. Modelli di Base Dati. a.a. 2001/ Modelli di Base Dati 8 L aggregazione e il raggruppamento in SQL a.a. 2001/2002 8.1 SQL: le funzioni di aggregazione 8.2 funzioni predefinite che agiscono sui valori contenuti in insiemi di righe della

Dettagli

Istruzione SELECT: fondamenti Interrogazioni nidificate Operatori insiemistici Istruzioni di aggiornamento Gestione delle tabelle

Istruzione SELECT: fondamenti Interrogazioni nidificate Operatori insiemistici Istruzioni di aggiornamento Gestione delle tabelle 2007 Politecnico di Torino 1 DB M B G Linguaggio SQL: fondamenti Introduzione Istruzione SELECT: fondamenti Interrogazioni nidificate Operatori insiemistici Istruzioni di aggiornamento Gestione delle tabelle

Dettagli

Fondamenti di Informatica A. A / 1 9

Fondamenti di Informatica A. A / 1 9 Fondamenti di Informatica Introduzione ai DBMS ed al Modello E -R Prof. Marco Lombardi A. A. 2 0 1 8 / 1 9 Dati e Basi di Dati 1/4 I dati sono importanti poiché costituiscono una risorsa aziendale La loro

Dettagli

Istruzioni DML. Istruzioni DML (Data Manipulation Language)

Istruzioni DML. Istruzioni DML (Data Manipulation Language) Istruzioni DML Istruzioni DML pag. 2 Inserimento dati in una tabella : INSERT pag. 2 Aggiornamento dati in una tabella : UPDATE pag. 6 Cancellazione record in una tabella : DELETE pag. 10 Esercizi di riepilogo

Dettagli

Il linguaggio SQL. TUTORATO DIFONDAMENTI DIINFORMATICA

Il linguaggio SQL. TUTORATO DIFONDAMENTI DIINFORMATICA Facoltà di Ingegneria e Architettura Corsi di Laurea in Ingegneria Chimica e Ingegneria Meccanica Il linguaggio SQL TUTORATO DI http://www.diee.unica.it/~marcialis/fi A.A. 2015/2016 CAPITOLO 5: Basi di

Dettagli

Basi di Dati. Concetti Fondamentali SQL-92 25/02/2004. Concetti Fondamentali. Introduzione. Interrogazioni. Creazione ed eliminazione di bd

Basi di Dati. Concetti Fondamentali SQL-92 25/02/2004. Concetti Fondamentali. Introduzione. Interrogazioni. Creazione ed eliminazione di bd Basi di Dati SQL-92 Concetti Fondamentali SQL-92 >> Sommario Introduzione Creazione ed eliminazione di bd Creazione ed eliminazione di tabelle Inserimenti di ennuple Concetti Fondamentali Interrogazioni

Dettagli

IL MODELLO RELAZIONALE

IL MODELLO RELAZIONALE Basi di dati 1 IL MODELLO RELAZIONALE (CAPITOLO 2) Codd 1970 Indipendenza dei dati Distinzione nella descrizione dei dati tra livello fisico e livello logico Vendors IBM,Informix,Microsoft,Oracle,Sybase

Dettagli

Interrogazioni in SQL SQL1 1

Interrogazioni in SQL SQL1 1 Interrogazioni in SQL SQL1 1 Dichiaratività di SQL E un linguaggio di IV generazione: in SQL l'utente specifica QUALE informazione è di suo interesse ma non COME estrarla dai dati il sistema costruisce

Dettagli

SQL: "storia" 31/05/2006 2

SQL: storia 31/05/2006 2 SQL 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, non i dettagli

Dettagli

Basi di dati. Linguaggio SQL: fondamenti - Introduzione. Elena Baralis 2007 Politecnico di Torino 1 D B M G 2 D B M G D B M G 4 D B M G 6

Basi di dati. Linguaggio SQL: fondamenti - Introduzione. Elena Baralis 2007 Politecnico di Torino 1 D B M G 2 D B M G D B M G 4 D B M G 6 Linguaggio SQL: fondamenti Sistemi informativi Istruzione : fondamenti Interrogazioni nidificate Operatori insiemistici Istruzioni di aggiornamento Gestione delle tabelle 2 al linguaggio SQL Istruzioni

Dettagli