Unità C1. Obiettivi. Le funzionalità di SQL. L evoluzione del linguaggio. L utilizzo di SQL. I tipi di dato. Il linguaggio SQL
|
|
- Norberto Stella
- 5 anni fa
- Visualizzazioni
Transcript
1 Obiettivi Unità C1 Il linguaggio SQL Conoscere l evoluzione del linguaggio SQL Saper definire dati, domini e vincoli ed essere in grado di recuperare dati dal database Conoscere le funzioni di aggregazione Sapere ordinare e raggruppare i dati Saper effettuare unioni, intersezioni e differenze Saper eseguire interrogazioni nidificate Saper aggiornare i dati, inserendo, modificando ed eliminando quelli esistenti Utilizzare SQL all interno di altri linguaggi L evoluzione del linguaggio Le funzionalità di SQL SQL è un linguaggio standard per l interazione con i database relazionali. Le origini di SQL si trovano in un documento del 1970 realizzato da Edgar Codd, A Relational Model of Data of Large Shared Data Banks. Primo standard SQL-86 pubblicato da ANSI e ratificato da ISO nel 1987 (ANSI e ISO sono due organismi i internazionali i che si occupano della standardizzazione delle tecnologie). SQL-92 (SQL 2) è lo standard a cui fanno riferimento la maggior parte dei DBMS. L evoluzione del linguaggio ha portato a due ulteriori versioni: SQL:1999 e SQL:2003. Il primo ha incluso funzioni orientate agli oggetti, ritenute tuttavia controverse e quindi non completamente supportate; il secondo ha esteso il supporto alla tecnologia XML. DDL (Data Definition Language, linguaggio di definizione dei dati). Consente di descrivere la struttura delle tabelle e di tutti gli elementi di supporto (come indici, vincoli, trigger, viste ecc.). Viene utilizzato per realizzare lo schema logico e lo schema fisico del database. DML (Data Manipulation Language, linguaggio per la manipolazione dei dati). Operazioni di inserimento, modifica e cancellazione dei dati. DCL (Data Control Language, linguaggio di controllo dei dati). Limiti sui dati (permessi di accesso, vincoli di integrità). QL (Query Language, linguaggio di interrogazione) Interrogare il database al fine di individuare i dati che corrispondono ai parametri di ricerca dell utente. L utilizzo di SQL Interattivo L utente utilizza un programma software, in genere fornito con il DBMS, in cui introdurre comandi SQL che vengono inviati al DBMS. All interno di applicazioni software L utente t utilizza applicazioni i i che sono approntate t da sviluppatori che realizzano i comandi SQL necessari per attivare le funzionalità desiderate. I comandi possono essere poi collegati nel programma in due modalità differenti: ospitati nel codice del software e inviati al DBMS all occorrenza. memorizzati all interno del DBMS e quindi richiamati dal programma. I tipi di dato 1
2 Gli operatori DDL Data Definition Language Creazione di una tabella Modifica di una tabella Eliminazione di una tabella Domini RESTRICT indica al database di impedire la cancellazione della tabella se questa contiene dati che sono referenziati da altre tabelle collegate. In questo modo, si evita che la base dati assuma contenuti inconsistenti. CASCADE indica al database di cancellare automaticamente tutte le tabelle collegate a questa mediante vincoli referenziali. SET NULL indica di impostare a NULL tutti i valori delle chiavi interessate. SQL offre la possibilità di definire nuovi tipi di dato (domini) CREATE DOMAIN <NomeDominio> [AS] <Tipo> [CHECK(<Condizione>)]; NomeDominio è il nome del nuovo tipo di dato; Tipo è il tipo di dato di base da cui partire per creare il dominio; Condizione indica eventuali condizioni di controllo da associare al tipo di dato. CREATE DOMAIN TIPO_COMPUTER AS CHAR(11) CHECK (VALUE IN ( notebook, desktop, tower, pda ); 2
3 Vincoli Vincoli interni I vincoli consentono di specificare controlli sui dati, al fine di assicurare la correttezza e consistenza dell informazione. I vincoli possono essere: interni (o intrarelazionali) specificano controlli sulla singola tabella intesa come entità a se stante di integrità referenziale riguardano i rapporti tra una tabella e l altra. NOT NULL VALUE IN VALUE BETWEEN PRIMARY KEY (<ElencoCampi>) indica la chiave primaria della tabella UNIQUE(<ElencoCampi>) indica che le colonne elencate sono parte di una chiave candidata CHECK(<Condizione>) indica un controllo su un espressione composta utilizzando i campi della tabella stessa. Vincoli di integrità referenziale RESTRICT, CASCADE, SET NULL FOREIGN KEY (<ElencoCampi1>) REFERENCES <NomeTabella> (<ElencoCampi2>) dove il primo elenco dei campi indica la chiave esterna che corrisponde alla chiave primaria della tabella NomeTabella come specificata dal secondo elenco di campi. L integrità referenziale viene controllata anche dalle parole chiave RESTRICT, CASCADE e SET NULL, che consentono di controllare la risposta del database a un vincolo. Un esempio QL Query Language 3
4 SELECT SELECT sintassi base Per estrarre informazioni dalla base di dati si utilizza l istruzione SELECT. La sintassi completa dell istruzione SELECT è complessa perché l istruzione implementa varie funzionalità. DISTINCT per restituire solo righe diverse tra loro. <CampoXXX> indica il campo da ritornare. <AliasXXX> indica un nome alternativo per il campo da restituire. <TabellaXXX> indica la tabella da cui recuperare i campi. SELECT (esempi) Restrizione Nell istruzione SELECT è possibile limitare la quantità di dati ritornati, individuando solo un sottoinsieme di quelli contenuti nella tabella. Questo è possibile grazie alla parola chiave WHERE. WHERE (condizione) SELECT WHERE (esempi) L espressione <Condizione> indica la condizione che deve essere soddisfatta dai record affinché i dati siano ritornati. All interno di questa espressione è possibile specificare: nomi dei campi di una qualsiasi delle tabelle indicate; operatori di confronto, come =, <>, >, >=, <=, <; operatori logici come NOT, AND, OR; l operatore LIKE; la parola chiave IS NULL o IS NOT NULL. 4
5 Join di due tabelle Alias anche per le tabelle La parola chiave WHERE può essere utilizzata anche per legare tra loro (JOIN) due o più tabelle, al fine di restituire solo alcune righe delle tabelle collegate. Per esempio: Funzioni di aggregazione Un esempio SQL dispone di alcune modalità per effettuare calcoli sui dati, senza per questo modificare i dati in tabella: il calcolo di espressioni e l utilizzo di funzioni predefinite. MARCA e MODELLO identificano il prodotto. GIACENZA indica quante unità di prodotto esistono a magazzino. LIVELLO_SCORTA indica il numero di unità al di sotto delle quali non vengono più accettati ordini per quel prodotto. LIVELLO_RIORDINO indica il numero di unità al di sotto dei quali viene emesso un ordine di acquisto per aumentare la giacenza. Calcoli sui campi Funzioni predefinite COUNT([DISTINCT] Campo) conteggia il numero di elementi del campo indicato. MIN([DISTINCT] Campo) restituisce il valore minimo del campo indicato. MAX([DISTINCT] Campo) restituisce il valore massimo del campo indicato. SUM([DISTINCT] Campo) calcola e restituisce la somma dei valori presenti nel campo indicato. AVG([DISTINCT] Campo) calcola e restituisce la media aritmetica dei valori presenti nel campo indicato. 5
6 Ordinamento Raggruppamento GROUP BY raggruppa le righe sulla base del valore di uno o più attributi, in genere per effettuare calcoli aggregati su dati omogenei. La sintassi completa dell istruzione SELECT, includendo anche la clausola GROUP BY, è la seguente: Il nome del campo viene utilizzato per effettuare l ordinamento. Il modificatore ASC o DESC viene utilizzato per indicare se l ordinamento è di tipo crescente o decrescente. Di default ascendente. Esempi HAVING È anche possibile restringere il risultato specificando una condizione che può considerare sia i campi sia il valore di funzioni di aggregazione. Unione Differenza e intersezione SQL consente di unire il risultato di più SELECT in verticale. Il meccanismo è simile all accodamento di una seconda lista a una prima, a patto che le due liste abbiano campi omogenei. 6
7 Interrogazioni nidificate Un esempio Talvolta le operazioni di interrogazione si rivelano particolarmente complesse; in questo caso, è necessario utilizzare più istruzioni SELECT al fine di ottenere tutti i dati voluti. IN NOT IN EXIST ANY - ALL ANY ritorna vero se il confronto indicato è vero per almeno uno degli elementi identificati dalla query nidificata ALL ritorna vero se il confronto indicato è vero per tutti gli elementi individuati dalla query nidificata. ANY e ALL sono più potenti di IN, in quanto consentono di utilizzare operatori di confronto >, >=, <= e < Inserimento DML Data Manipulation Language <NomeTabella> è il nome della tabella in cui inserire i dati. <CampoXXX> è il nome dei campi da valorizzare. <ValoreXXX> sono i valori da inserire nei campi. L elenco dei campi è opzionale. Se non viene specificato, è necessario fornire valori per tutti i campi presenti nella tabella. 7
8 Modifica Eliminazione <NomeTabella> è il nome della tabella da modificare. <CampoXXX> è il nome dei campi da valorizzare. <ValoreXXX>, sono i valori da inserire nei campi. <Condizione> è l espressione che individua un sottoinsieme di righe per cui deve essere applicata la modifica. Nell esempio si azzera la velocità di tutti i processori presenti nella tabella Processore. <NomeTabella> è il nome della tabella da modificare. <Condizione> è l espressione che individua il sottoinsieme di righe da eliminare. SQL come linguaggio ospitato Schema Per eseguire comandi SQL da un programma software (come si dice in gergo, per eseguire SQL ospitato) è necessario effettuare alcune operazioni aggiuntive. Connessione: per ottenere un oggetto che consentirà di eseguire uno o più comandi SQL. La connessione è necessaria per stabilire con quale database si vuole operare e per fornire dati di autenticazione (in genere utente/password). Creazione di un comando SQL: viene creato un oggetto che rappresenta un istruzione SQL e che viene impostato con uno specifico comando. Esecuzione del comando: comporta il passaggio dell oggetto che rappresenta il comando a quello che rappresenta la connessione, in modo che il comando venga eseguito. Iterazione sulla risposta: il risultato di un istruzione SELECT è una tabella e in genere un programma deve scorrere le righe del risultato per elaborarle. Chiusura della risposta: l oggetto che rappresenta la risposta, una volta utilizzato, deve essere chiuso e rilasciato dalla memoria. Chiusura del comando: l oggetto che rappresenta il comando SQL, una volta utilizzato, deve essere chiuso e rilasciato dalla memoria. Chiusura della connessione: l oggetto che rappresenta la connessione SQL, prima della conclusione del programma, deve essere chiuso e rilasciato dalla memoria. Gli errori Esercizi Nel corso di tutte le operazioni con il database è necessario occuparsi della gestione degli errori, le tecniche di gestione dipendono dal linguaggio di programmazione in uso. Ciascuna delle operazioni con il database può sollevare un errore, che può essere di comunicazione, di dati o di altra natura. Il database Cinema è formato dalle seguenti tabelle: 8
9 Esercizi 1. Modificare in ITA la Nazionalità di tutti i registi che hanno nome che termina per Mario. 2. Recuperare Titolo e Titolo originale di tutti i film di un certo regista. 3. Recuperare Titolo e nome del regista di film di genere commedia diretti da registi di Nazionalità ITA. 4. Recuperare Titolo e Regista dei film che hanno avuto una candidatura all Oscar per la Regia. 5. Recuperare Titolo, Regista e anno dei film che hanno vinto l Oscar per la Regia. 6. Recuperare Nome degli attori che hanno recitato in un certo film. 7. Recuperare Titolo e Regista dei film in cui ha recitato un certo attore. 8. Recuperare il Titolo dei film candidati ai premi del festival di Venezia in un certo anno. 9. Aggiungere il campo at_foto di 30 caratteri alla tabella Attore 10. Modifica il campo at_foto in Attore ponendolo uguale ad at_nome+.jpg 9
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 è
DettagliSQL 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
DettagliSQL. Il linguaggio. I linguaggi dentro SQL. Evoluzione del linguaggio. Utilizzo di SQL. I diale8i SQL SQL. A. Ferrari 1
Structured Query Language Il linguaggio è un linguaggio di interrogazione per database progettato per o leggere, o modificare o gestire dati memorizzati in un sistema basato sul modello relazionale o creare
DettagliManuale 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,
DettagliSISTEMI 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
DettagliStructured 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
DettagliCaratteristiche 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;
DettagliSQL 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
DettagliQL (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
DettagliSQL: 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
DettagliStructured. 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
DettagliSQL. 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
DettagliPRODOTTO 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,
DettagliMODULO 2. Query normali e parametriche Query di:
MODULO 2 TITOLO DBMS e SQL In questo Modulo si affronta lo studio dei DBMS Access e MySQL. In particolare per Access, si descrive come progettare, impostare e modificare gli strumenti di lavoro (tabelle,
DettagliSelect 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
DettagliInterrogazioni nidificate
Interrogazioni nidificate Nella clausola where si possono utilizzare valori prodotti da altre istruzioni select utilizzando any (qualsiasi) o all (tutti) insieme agli operatori di confronto Trovare nome,
DettagliManuale 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...
DettagliLaboratorio 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
DettagliA. Ferrari introduzione alle basi di dati
introduzione alle basi di dati DataBase Management System DBMS o DataBase Management System o insieme di programmi che offrono a diverse tipologie di utenti tutti gli strumenti necessari per gestire grandi
DettagliIntroduzione alle basi di dati. A. Ferrari
Introduzione alle basi di dati A. Ferrari Archiviazione mediante file I vari S.O. e i cosiddetti linguaggi ad alto livello mettono a disposizione varie tipologie di file per l archiviazione e gestione
DettagliSQL 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
DettagliSQL. SQL come Data Manipulation Language - Inserimento, cancellazione e aggiornamento di righe
SQL SQL come Data Manipulation Language - Inserimento, cancellazione e aggiornamento di righe Operazioni di aggiornamento Abbiamo visto come creare tabelle e come interrogarle. Vedremo ora come popolarle
DettagliA. Ferrari introduzione alle basi di dati
introduzione alle basi di dati informatica archiviazione mediante file o i vari S.O. e i cosiddetti linguaggi ad alto livello mettono a disposizione varie tipologie di file per l archiviazione e gestione
DettagliTipi 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
DettagliCorso di. Basi di Dati I. 9. Esercitazioni in SQL: Check, asserzioni, viste
Corso di Basi di Dati 9. Esercitazioni in SQL: Check, asserzioni, viste A.A. 2016 2017 Check Come abbiamo visto, SQL permette di specificare vincoli sugli attributi e le tabelle attraverso il comando check
DettagliSQL. 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
DettagliV. 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
DettagliLaboratorio 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
DettagliCORSO ACCESS 2000 PARTE VI
Le Query Le Query selezionano dati, da una o più tabelle in un database, che soddisfano determinati requisiti e visualizzano i risultati in un foglio dati. I dati richiesti vengono visualizzati in un recordset
DettagliDomande utili alla preparazione dell orale di Informatica all Esame di Stato
Domande utili alla preparazione dell orale di Informatica all Esame di Stato 1.Al livello fisico un database si appoggia ai files per contenere i suoi dati? 2.Esistono altri modelli di organizzazione oltre
DettagliIl linguaggio SQL. Evoluzione del linguaggio. I linguaggi dentro SQL. I dialeu SQL. U@lizzo di SQL SQL. A. Ferrari 1
Il linguaggio SQL Structured Query Language SQL è un linguaggio di interrogazione per database proge
DettagliProf. Pagani corrado SISTEMI INFORMATIVI E DATABASE
Prof. Pagani corrado SISTEMI INFORMATIVI E DATABASE ARCHIVIAZIONE DEI DATI I vari S.O. e i cosiddetti linguaggi ad alto livello mettono a disposizione varie tipologie di file per l archiviazione e gestione
DettagliSQL 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
DettagliFondamenti 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
DettagliDBMS. Alice Pavarani
DBMS Alice Pavarani DBMS Insieme di programmi che offrono gli strumenti per gestire una base di dati Permette di: definire la struttura delle tabelle recuperare le informazioni manipolare i dati memorizzati
DettagliSommario. 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
DettagliDDL (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
DettagliInformatica 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
DettagliESERCITAZIONI 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)
DettagliLinguaggio SQL seconda parte
Linguaggio SQL seconda parte A. Lorenzi, E. Cavalli INFORMATICA PER SISTEMI INFORMATIVI AZIENDALI Copyright Istituto Italiano Edizioni Atlas Le condizioni di ricerca 2 Le condizioni di ricerca Usate nelle
DettagliFondamenti di Informatica e Programmazione
Fondamenti di Informatica e Programmazione Prof. G ianni D Angelo Email: giadangelo@unisa.it A. A. 2018/ 19 Le Origini di SQL Principali Versioni Anni 70 1986 SEQUEL Structured English QUEry Language Sviluppato
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezione 6 Raffaella Gentilini 1 / 40 Sommario 1 Viste 2 3 2 / 40 Viste Viste le viste sono tabelle virtuali corrispondono al risultato di una query (SELECT) valutata
DettagliGestione delle informazioni. Tot. h 10. Base di Dati. Tot. h 56. Grafica in C# - Laboratorio- Tot. h 40. Dipartimento Informatica Materia Informatica
Dipartimento Informatica Materia Informatica Classe 5 Tec Ore/anno 198 A.S. 2018-2019 MODULI COMPETENZE UNITA di APPRENDIMENTO Gestione delle informazioni Tot. h 10 Base di Dati Tot. h 56 Grafica in C#
DettagliAppunti 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
DettagliViste come strumenti di programmazione
Viste come strumenti di programmazione Trovare gli impiegati che hanno lo stesso capo di Rossi Senza vista: PROJ Impiegato ((Afferenza JOIN Direzione) JOIN REN ImpR,RepR Impiegato,Reparto ( SEL Impiegato='Rossi'
DettagliInformatica 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
DettagliA.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
DettagliGestione dei valori nulli
Gestione dei valori nulli La gestione dei valori nulli, a seconda dell implementazione, avviene attraverso una logica a due valori come in SQL-89, o a tre valori (vero, falso, unknown) come in SQL-2. In
DettagliUniversita 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
DettagliSQL - Structured Query Language
SQL - Structured Query Language Lab 05 Alessandro Lori Università di Pisa 27 Aprile 2012 Riepilogo esercitazione precedente Operatori insiemistici (UNION, INTERSECT, EXCEPT) Riepilogo esercitazione precedente
DettagliCorso 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
DettagliSistemi 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
DettagliIL LINGUAGGIO SQL LE BASI
IL LINGUAGGIO SQL LE BASI DB DI RIFERIMENTO PER GLI ESEMPI 2 ESPRESSIONI NELLA CLAUSOLA SELECT La SELECT list può contenere non solo attributi, ma anche espressioni: Le espressioni possono comprendere
DettagliMS Access Un DBMS relazionale per Windows?
MS Access Un DBMS relazionale per Windows? Quali DBMS in ambiente PC: dbase (ver. 5 per windows) FoxPro (per windows) Access (per windows) SQL Server (client/server) Oracle (client/server) Informix (client/server)...
DettagliInterpretazione delle query nidificate
Interpretazione delle query nidificate Per analizzare il risultato di una interrogazione nidificata si può supporre di valutare prima il risultato dell interrogazione nidificata (query interna) per poi
DettagliCorso 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
DettagliEquivalenza 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
DettagliOperatori aggregati. Operatori aggregati. Interrogazioni con raggruppamento. Interrogazioni con raggruppamento
Operatori aggregati In algebra relazionale le espressioni vengono valutate sulle singole tuple in successione. Talvolta però possono essere necessarie informazioni derivabili dall esame di tutte le tuple
DettagliIl 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
DettagliV. Moriggia Modelli di Base Dati. Modelli di Base Dati. a.a. 2001/2002 4.1
Modelli di Base Dati 4 Un DBMS: Access a.a. 2001/2002 4.1 DBMS 4.2 DBMS = Data Base Management System Software per la costruzione e la gestione di una base dati Esempi di DBMS: Oracle, MySQL, SQLServer,
DettagliSQL: DDL, VI, Aggiornamenti e Viste
SQL: DDL, VI, Aggiornamenti e Viste 1 SQL è più di un semplice linguaggio di interrogazione v Linguaggio di definizione dati (Data-definition language, DDL): Crea/distrugge/modifica relazioni e viste Definisce
DettagliPROGETTAZIONE 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
DettagliCorso di Access Modulo L2 A (Access) I tipi di query
Corso di Access Modulo L2 A (Access) 2.3.2 I tipi di query 1 Prerequisiti Concetto di database relazionale Utilizzo elementare del computer Concetti fondamentali di basi di dati Interrogazione di un DB
DettagliIL 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
DettagliE possibile ordinare le righe del risultato di una interrogazione attraverso la clausola order by, a chiusura di una interrogazione.
Ordinamento E possibile ordinare le righe del risultato di una interrogazione attraverso la clausola order by, a chiusura di una interrogazione. order by AttrdiOrdinamento [asc desc] {, AttrdiOrdinamento
DettagliProf. Alberto Postiglione Dipartimento di Scienze della Comunicazione Università degli Studi di Salerno
Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : SQL (1) Interrogazioni semplici Prof. Alberto Postiglione
DettagliESERCITAZIONE: 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
DettagliLe basi di dati. Definizione 1. Lezione 2. Bisogna garantire. Definizione 2 DBMS. Differenza
Definizione 1 Lezione 2 Le basi di dati Gli archivi di dati Organizzato in modo integrato attraverso tecniche di modellazione di dati Gestiti su memorie di massa Con l obiettivo Efficienza trattamento
DettagliSQL. SQL: "storia. Sviluppato nella metà degli anni settanta (1974) presso il laboratorio di ricerca IBM di S.Josè. Dal 1983 ca. "standard di fatto"
SQL SQL: "storia Sviluppato nella metà degli anni settanta (194) presso il laboratorio di ricerca IBM di S.Josè Dal 1983 ca. "standard di fatto" E il linguaggio di riferimento per l interrogazione di DBMS
DettagliPrimo Compitino di Basi di Dati
Primo Compitino di Basi di Dati 19 Aprile 2004 Svolgere gli esercizi direttamente sul foglio del testo Usare fogli aggiuntivi solo in mancanza di spazio. NOME: COGNOME: MATRICOLA: Esercizio Punti previsti
DettagliAtzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 : SQL SQL originariamente "Structured Query Language", ora "nome proprio" linguaggio con varie funzionalità: contiene sia il DDL sia
DettagliLinguaggio SQL: fondamenti D B M G
Linguaggio SQL: fondamenti Gestione delle tabelle Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati Creazione di una tabella
DettagliElena 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
DettagliD B M G. Linguaggio SQL: fondamenti. Gestione delle tabelle
Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati Creazione di una tabella (1/3) Si utilizza
DettagliD B M G D B M G 2. Sistemi informativi. Linguaggio SQL: costrutti avanzati
Sistemi informativi D B M G Linguaggio SQL: costrutti avanzati Gestione delle transazioni SQL per le applicazioni Controllo dell accesso Gestione degli indici D B M G 2 Pag. 1 2007 Politecnico di Torino
DettagliVersione 1.0. (Iniziamo ad interrogare il DB)
Appunti di Informatica SQL for COOL PEOPLE Versione 1.0 Lezione 03 (Iniziamo ad interrogare il DB) prof. Michele Salvemini 2015/2016 Sommario Impostazione della lezione... 3 pre-requisiti:... 3 Argomenti
DettagliLinguaggio SQL: costrutti avanzati Controllo dell accesso
Linguaggio SQL: costrutti avanzati D B M G Sicurezza dei dati Risorse e privilegi Gestione dei privilegi in SQL Gestione dei ruoli in SQL D B M G 2 Pag. 1 1 D B M G Sicurezza dei dati Protezione dei dati
DettagliLinguaggio SQL: costrutti avanzati D B M G
Linguaggio SQL: costrutti avanzati D B M G Controllo dell accesso Sicurezza dei dati Risorse e privilegi Gestione dei privilegi in SQL Gestione dei ruoli in SQL D B M G 2 Sicurezza dei dati Protezione
DettagliCorso 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
DettagliLaboratorio 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
DettagliA.s Programma di Informatica
A.s. 2008-2009 Programma di Informatica Gli aspetti teorici della disciplina sono suddivisi in 5 moduli: A. Progetto di sistemi informativi B. Basi di dati C. Linguaggi per basi di dati relazionali D.
DettagliBasi di Dati. Concetti Avanzati
Basi di Dati Concetti Avanzati Concetti Avanzati Raggruppamenti Clausole GROUP BY e HAVING Forma Generale della SELECT Nidificazione Uso nel DML e DDL Nidificazione, Viste e Potere Espressivo Esecuzione
DettagliSQL (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
DettagliIl 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,
DettagliSQL 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
DettagliBasi di Dati. Concetti e Principi Generali. Maria Mirto
Basi di Dati Concetti e Principi Generali Maria Mirto Organizzazione dei Dati Archivi o file Procedure di accesso in qualunque linguaggio di programmazione Duplicazione dati: ridondanza incoerenza formati
DettagliISTITUTO PARITARIO MICHELANGELO - RIMINI- PIANO DI LAVORO
ISTITUTO PARITARIO MICHELANGELO - RIMINI- PIANO DI LAVORO ANNO SCOLASTICO 2016-2017 SETTORE Economico Classe V Sez. A MATERIA DI INSEGNAMENTO: INFORMATICA STRUMENTI Paolo Camagni, Riccardo Nikolassy (2014)
DettagliLABORATORIO di INFORMATICA
Università degli Studi di Cagliari Corso di Laurea Magistrale in Ingegneria per l Ambiente ed il Territorio LABORATORIO di INFORMATICA A.A. 2010/2011 Prof. Giorgio Giacinto IL MODELLO RELAZIONALE http://www.diee.unica.it/giacinto/lab
DettagliITI M. FARADAY. Programmazione a. s
ITI M. FARADAY Programmazione a. s. 2018-2019 Disciplina: INFORMATICA Indirizzo: INFORMATICA E TELECOMUNICAZIONI Classi: Quinta A Quinta B Ore settimanali previste: 6 (3 ora Teoria - 3 ore Laboratorio)
DettagliCorso 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
DettagliSQL - Structured Query Language
SQL - Structured Query Language Luca Martini Università di Pisa 16 aprile 2010 Riepilogo sugli operatori aggregati Sintassi SELECT A t t r i b u t o 1, MAX( A t t r i b u t o 2 ),... FROM Tabella1, Tabella2,...
DettagliInterrogazioni di tipo insiemistico. Select. Interrogazioni di tipo insiemistico. Interrogazioni nidificate
Select La sintassi di select cui siamo arrivati dopo le estensioni viste è quindi: SelectSQL ::= select ListaAttributiOEspressioni from ListaTabelle [ where CondizioniSemplici ] [ group by ListaAttributiDiRaggruppamento]
DettagliArchivi e basi di dati - ing. M. Cossentino. Settore. Traccia 1. Traccia 200. Settore non polarizzato
Settore Traccia 1 Traccia 200 Settore non polarizzato '! " # $ % & ( ) * + + ' ' ' !"#"$%, & &'(("% '&)'' ''"* - -. / / / 0/!- "-, (0 #- / / / 0/ --- + 1 ' # $ + 2 13 ,, - 4 '. & 56 2 '/!!! "7&% 8, 9 /'"'0'1'&'
DettagliInterrogazioni nidificate
Interrogazioni nidificate Trovare nome, cognome e matricola degli studenti che non hanno fatto esami select Matricola,Nome,Cognome from studenti where matricola all (select studente group by studente)
DettagliD 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)
Dettagliinsert into Dipartimento(NomeDip, Città) values('produzione','torino') insert into ProdottiMilanesi (select codice, descrizione from Prodotto
Inserimento insert into Dipartimento(NomeDip, Città) values('produzione','torino') Si utilizza in genere mediante una form per consentire agli utenti di inserire dati. L'ordinamento degli attributi (se
DettagliInserimento. Cancellazione. Modifica. INSERT INTO Persone VALUES ('Mario',25,52) INSERT INTO Persone(Nome, Eta, Reddito) VALUES('Pino',25,52)
Inserimento insert into Dipartimento(NomeDip, Città) values('produzione','torino') Si utilizza in genere mediante una maschera (form) per consentire agli utenti di inserire dati. L'ordinamento degli attributi
DettagliCreazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati
Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati 2007 Politecnico di Torino 1 Creazione di
DettagliElena 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