Corso di. Basi di Dati I. 10. Esercitazioni in SQL: Complementi
|
|
- Annalisa Giuseppe
- 4 anni fa
- Visualizzazioni
Transcript
1 Corso di Basi di Dati 10. Esercitazioni in SQL: Complementi A.A
2 Funzioni condizionali Vediamo qualche altro comando utile di SQL. Il comando coalesce ammette come argomento una sequenza di espressioni e restituisce il primo valore non nullo. La funzione può quindi essere usata per convertire valori nulli in valori espliciti.
3 Funzioni condizionali Vediamo qualche altro comando utile di SQL. Il comando coalesce ammette come argomento una sequenza di espressioni e restituisce il primo valore non nullo. La funzione può quindi essere usata per convertire valori nulli in valori espliciti. Esempio: La sequente query estrae dalla tabella Impiegati(Nome, Dipart, Stipendio) i nomi degli impiegati ed i dipartimenti cui afferiscono gli impiegati, usando la stringa Ignoto nel caso in cui non si conosca il dipartimento. select Nome, coalesce(dipart,"ignoto") from Impiegati
4 Funzioni condizionali Il comando nullif fa il contrario: ammette come argomento una espressione e un valore costante; se l espressione è pari al valore costante, la funzione restituisce NULL, altrimenti restituisce il valore dell espressione.
5 Funzioni condizionali Il comando nullif fa il contrario: ammette come argomento una espressione e un valore costante; se l espressione è pari al valore costante, la funzione restituisce NULL, altrimenti restituisce il valore dell espressione. Esempio: La sequente query estrae dalla tabella Impiegati(Nome, Dipart, Stipendio) i nomi degli impiegati ed i dipartimenti cui afferiscono gli impiegati, mettendo il dipartimento al valore NULL se il dipartimento è la stringa Ignoto. select Nome, nullif(dipart,"ignoto") from Impiegati
6 Funzioni condizionali Il comando case case permette di specificare strutture condizionali, il cui risultato dipende dalla valutazione del contenuto delle tabelle. La sintassi ammette due varianti. La prima riguarda una singola espressione: case espressione case when valoredellespressione then risultato case when altrovaloredellespressione then altrorisultato case... case else altrorisultato end
7 Funzioni condizionali Esempio: consideriamo la tabella Veicoli(Targa, Tipo, KWatt). Calcoliamo le tasse di circolazione: per le auto, è 2.58 KWatt, mentre per le moto è ( KWatt). Per altri tipi, mettiamo NULL. Creiamo il risultato con le colonne Targa, Tasse. select Targa, case Tipo case when auto then 2.58 KWatt case when moto then ( KWatt) case else NULL end as Tasse from Veicoli
8 Funzioni condizionali La seconda è più generica: case case when criterio then espressione case when altrocriterio then altraespressione case... case else altraespressione end
9 Funzioni condizionali Esempio: nella tabella Impiegati(Nome, Ufficio, Dipart, Stipendio), aumentiamo lo stipendio: del 10%, se l impiegato lavora in amministrazione, ufficio 10; del 20%, se l impiegato lavora in amministrazione, non nell ufficio 10; del 15%, se l impiegato lavora in produzione, non nell ufficio 10.
10 Funzioni condizionali update Impiegati set Stipendio = case when (Dipart = "Amministrazione" and Ufficio = 10) then Stipendio * 1.1 when (Dipart = "Amministrazione" and Ufficio <> 10) then Stipendio * 1.2 when Dipart = "Produzione" then Stipendio * 1.15 else Stipendio end
11 Transazioni La sintassi per specificare transazioni, cioè sequenze di operazioni in SQL, è la seguente: start transaction; singole operazioni... commit work;
12 Transazioni La sintassi per specificare transazioni, cioè sequenze di operazioni in SQL, è la seguente: start transaction; singole operazioni... commit work; Esempio: start transaction; update ContoCorrente set Ammontare = Ammontare + 10 where NumConto = 12202; update ContoCorrente set Ammontare = Ammontare - 10 where NumConto = 42177; commit work;
13 Transazioni Osservazioni: SQL include la possibilità di comandi procedurali (if, goto, ecc...) all interno delle transazioni, comandi che non vedremo.
14 Transazioni Osservazioni: SQL include la possibilità di comandi procedurali (if, goto, ecc...) all interno delle transazioni, comandi che non vedremo. Anche un comando per interrompere l intera transazione evitando ogni modifica ai dati: rollback work.
15 Transazioni Osservazioni: SQL include la possibilità di comandi procedurali (if, goto, ecc...) all interno delle transazioni, comandi che non vedremo. Anche un comando per interrompere l intera transazione evitando ogni modifica ai dati: rollback work. Il DBMS è organizzato in modo che l esecuzione di una transazione sia indipendente dalla contemporanea esecuzione di altre transazioni.
16 Transazioni Osservazioni: SQL include la possibilità di comandi procedurali (if, goto, ecc...) all interno delle transazioni, comandi che non vedremo. Anche un comando per interrompere l intera transazione evitando ogni modifica ai dati: rollback work. Il DBMS è organizzato in modo che l esecuzione di una transazione sia indipendente dalla contemporanea esecuzione di altre transazioni. In particolare: il risultato dell esecuzione contemporanea di più transazioni deve essere uguale al risultato che le stesse transazioni otterrebbero qualora ciascuna di esse fosse eseguita da sola,
17 Transazioni Osservazioni: SQL include la possibilità di comandi procedurali (if, goto, ecc...) all interno delle transazioni, comandi che non vedremo. Anche un comando per interrompere l intera transazione evitando ogni modifica ai dati: rollback work. Il DBMS è organizzato in modo che l esecuzione di una transazione sia indipendente dalla contemporanea esecuzione di altre transazioni. In particolare: il risultato dell esecuzione contemporanea di più transazioni deve essere uguale al risultato che le stesse transazioni otterrebbero qualora ciascuna di esse fosse eseguita da sola, l esecuzione di un rollback di una transazione non deve causare il rollback di altre transazioni, eventualmente generando una reazione a catena.
18 Transazioni Osservazioni: SQL include la possibilità di comandi procedurali (if, goto, ecc...) all interno delle transazioni, comandi che non vedremo. Anche un comando per interrompere l intera transazione evitando ogni modifica ai dati: rollback work. Il DBMS è organizzato in modo che l esecuzione di una transazione sia indipendente dalla contemporanea esecuzione di altre transazioni. In particolare: il risultato dell esecuzione contemporanea di più transazioni deve essere uguale al risultato che le stesse transazioni otterrebbero qualora ciascuna di esse fosse eseguita da sola, l esecuzione di un rollback di una transazione non deve causare il rollback di altre transazioni, eventualmente generando una reazione a catena. Questo sia in caso di rollback volontario, cioè dato come comando in una transazione, sia in caso di rollback forzato, cioè causato da un errore.
19 Procedure SQL permette la definizione di procedure, che normalmente vengono memorizzate all interno della base di dati come parti dello schema.
20 Procedure SQL permette la definizione di procedure, che normalmente vengono memorizzate all interno della base di dati come parti dello schema. Come accade nei linguaggi di programmazione (ad es. C), le procedure permettono di associare un nome ad una sequenza di istruzioni SQL, con la possibilità di specificare dei parametri (argomenti).
21 Procedure SQL permette la definizione di procedure, che normalmente vengono memorizzate all interno della base di dati come parti dello schema. Come accade nei linguaggi di programmazione (ad es. C), le procedure permettono di associare un nome ad una sequenza di istruzioni SQL, con la possibilità di specificare dei parametri (argomenti). Una volta che la procedura è definita, essa è utilizzabile come se facesse parte dell insieme dei comandi SQL predefiniti.
22 Procedure Esempio: consideriamo la tabella Dipartimenti(Nome, Città). Creiamo una procedura che accetti come argomenti il nome di un dipartimento ed una città, e che assegni la città specificata al dipartimento specificato.
23 Procedure Esempio: consideriamo la tabella Dipartimenti(Nome, Città). Creiamo una procedura che accetti come argomenti il nome di un dipartimento ed una città, e che assegni la città specificata al dipartimento specificato. procedure AssegnaCittà(:Dipartimento varchar(20), :Città varchar(20)) begin update Dipartimenti set Città = :Città where Nome = :Dipartimento; end;
24 Procedure Esempio: consideriamo la tabella Dipartimenti(Nome, Città). Creiamo una procedura che accetti come argomenti il nome di un dipartimento ed una città, e che assegni la città specificata al dipartimento specificato. procedure AssegnaCittà(:Dipartimento varchar(20), :Città varchar(20)) begin update Dipartimenti set Città = :Città where Nome = :Dipartimento; end; Osservazione: la sintassi può variare a seconda del DBMS.
25 Procedure Una volta definita questa procedura, si potrà usarla come un comando SQL. Ad esempio, per assegnare la città Roma al dipartimento di nome Matematica, useremo: mysql>assegnacittà("matematica", "Roma");
26 Procedure Una volta definita questa procedura, si potrà usarla come un comando SQL. Ad esempio, per assegnare la città Roma al dipartimento di nome Matematica, useremo: mysql>assegnacittà("matematica", "Roma"); Osservazione: non è necessario sapere in quale tabella sono immagazzinati questi dati, o in che modo. Basta sapere che la base di dati è dotata di questa procedura.
27 Procedure Le procedure possono coinvolgere un numero qualsiasi di tabelle e di colonne. Esempio: consideriamo le tabelle Impiegati(Nome, Città) e Dipartimenti(NomeDip, Città). Definiamo una procedura che cambia la città in entrambe le tabelle, da una :VecchiaCittà ad una :NuovaCittà.
28 Procedure Le procedure possono coinvolgere un numero qualsiasi di tabelle e di colonne. Esempio: consideriamo le tabelle Impiegati(Nome, Città) e Dipartimenti(NomeDip, Città). Definiamo una procedura che cambia la città in entrambe le tabelle, da una :VecchiaCittà ad una :NuovaCittà. procedure Trasloco(:VecchiaCittà varchar(20), :NuovaCittà varchar(20)) begin update Dipartimenti set Città = :NuovaCittà where Città = :VecchiaCittà; update Impiegati set Città = :NuovaCittà where Città = :VecchiaCittà; end;
29 Trigger SQL mette a disposizione anche i trigger, detti anche regole attive.
30 Trigger SQL mette a disposizione anche i trigger, detti anche regole attive. Un trigger: si attiva quando accade uno specifico evento all interno della base di dati e controlla se è soddisfatta una data condizione. Se sì, allora esegue un azione stabilita.
31 Trigger Sintassi: create trigger NomeTrigger after azione da controllare for each row when condizione azione del trigger
32 Trigger Esempio: create trigger ImpiegatiSenzaDip after insert into Impiegati for each row when (new.dipart is null) update Impiegato set Dipart = "NuoviArrivati" where Matr = new.matr
33 Trigger Esempio: create trigger ImpiegatiSenzaDip after insert into Impiegati for each row when (new.dipart is null) update Impiegato set Dipart = "NuoviArrivati" where Matr = new.matr Il trigger viene attivato tutte le volte che il sistema rileva l inserimento di righe all interno della tabella Impiegati.
34 Trigger Esempio: create trigger ImpiegatiSenzaDip after insert into Impiegati for each row when (new.dipart is null) update Impiegato set Dipart = "NuoviArrivati" where Matr = new.matr Il trigger viene attivato tutte le volte che il sistema rileva l inserimento di righe all interno della tabella Impiegati. Se la condizione che segue when è soddisfatta, ovvero se la riga inserita ha NULL sulla colonna Dipart, l azione del trigger viene eseguita: assegna all attributo Dipart del nuovo impiegato il valore Nuovi Arrivati.
35 Trigger Ogni trigger è sensibile a un solo evento.
36 Trigger Ogni trigger è sensibile a un solo evento. L azione da controllare può solo riguardare operazioni SQL di aggiornamento dello stato della base di dati, ovvero insert e delete su tabelle, e update su tabelle o singoli attributi.
37 Trigger Ogni trigger è sensibile a un solo evento. L azione da controllare può solo riguardare operazioni SQL di aggiornamento dello stato della base di dati, ovvero insert e delete su tabelle, e update su tabelle o singoli attributi. Nel criterio dopo when è possibile utilizzare le variabili predefinite new e old, che si riferiscono alla nuova e alla vecchia versione della riga aggiunta o modificata.
38 Trigger Ogni trigger è sensibile a un solo evento. L azione da controllare può solo riguardare operazioni SQL di aggiornamento dello stato della base di dati, ovvero insert e delete su tabelle, e update su tabelle o singoli attributi. Nel criterio dopo when è possibile utilizzare le variabili predefinite new e old, che si riferiscono alla nuova e alla vecchia versione della riga aggiunta o modificata. L azione del trigger, è rappresentata da un singolo comando o una procedura SQL.
39 Trigger Un applicazione tipica dei trigger è l introduzione di vincoli d integrità personalizzati.
40 Trigger Un applicazione tipica dei trigger è l introduzione di vincoli d integrità personalizzati. Va però tenuto sotto controllo il rischio di trigger a catena : essi reagiscono a modifiche della base di dati, e possono a loro volta modificare la base di dati. Quindi l attivazione di un trigger può causare l attivazione di altri trigger, con il rischio di attivazioni cicliche che non terminano.
Corso di. Basi di Dati I. 10. Esercitazioni in SQL: Complementi
Corso di Basi di Dati 10. Esercitazioni in SQL: Complementi A.A. 2016 2017 Funzioni condizionali Vediamo qualche altro comando utile di SQL. Il comando coalesce ammette come argomento una sequenza di espressioni
DettagliTrigger. Basi di dati attive. Trigger: regole che specificano azioni attivate automaticamente dal DBMS al verificarsi di determinati eventi
Basi di dati attive : regole che specificano azioni attivate automaticamente dal DBMS al verificarsi di determinati eventi Oggi fanno parte dello standard SLQ-99 In passato ogni DBMS li implementava seguendo
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
DettagliTali regole vengono attivate in modo automatico al verificarsi di specifici eventi sulla. eseguono azioni sulla base di dati stessa.
Una base di dati è ATTIVA quando consente la definizione e la gestione di regole attive o trigger. Tali regole vengono attivate in modo automatico al verificarsi di specifici eventi sulla base di dati
DettagliCap. 7 -Trigger e loro uso
1 SOMMARIO 2 Introduzione... 3 Definizione standard di trigger... 10 Cap. 7 -Trigger e loro uso Uso dei trigger e integrità referenziale... 18 Comportamento attivo delle BD Si realizza disponendo di un
DettagliBasi di dati attive. Paolo Atzeni Stefano Ceri. Basi di dati attive
Basi di dati attive Paolo Atzeni Stefano Ceri Basi di dati attive BD con componente per la gestione di regole Evento- Condizione-Azione (regole di produzione): eventi: normalmente modifiche della base
DettagliSQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS)
1 SQL Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) a.a. 2015/2016 http://www.di.uniba.it/~lisi/courses/basi-dati/bd2015-16.htm dott.ssa Francesca A. Lisi francesca.lisi@uniba.it
DettagliBasi di Dati Attive. Basi di Dati Attive
Basi di Dati Passive le politiche di reazione nei vincoli d integrità referenziale sono il primo esempio della necessità di introdurre un comportamento reattivo nelle basi di dati mettendo a fattor comune
DettagliBasi di dati attive. Paolo Atzeni. Basi di dati attive
Basi di dati attive Paolo Atzeni Basi di dati attive BD con componente per la gestione di regole Evento- Condizione-Azione (regole di produzione): eventi: normalmente modifiche della base di dati valuta
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezione 9 Raffaella Gentilini 1 / 41 Sommario 1 DBMS Attivi e Triggers 2 2 / 41 DBMS Attivi DBMS Attivi I DBMS tradizionale sono passivi: Eseguono delle operazioni solo
DettagliLe Basi di Dati Attive
Le Basi di Dati Attive Angelo Chianese, Vincenzo Moscato, Antonio Picariello, Lucio Sansone Basi di dati per la gestione dell'informazione 2/ed McGraw-Hill Capitolo 8, paragrafo 8.2 Manuale PostgreSQL
DettagliLe Basi di Dati Attive
Le Basi di Dati Attive Basi di dati: Architetture e linee di evoluzione - Seconda edizione Capitolo 5 Appunti dalle lezioni SQL in Linguaggi di programmazione L uso diretto dell interprete SQL è tipicamente
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
DettagliSilvia Chiusano, Paolo Garza 1
Creazione di un trigger Sviluppo ed utilizzo dei trigger in Oracle Silvia Chiusano Paolo Garza CREATE TRIGGER nome_trigger modo evento [OR evento] ON tabella [REFERENCING referenza] [] [WHEN (predicato
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
DettagliBasi di dati. SQL: Caratteristiche evolute
Basi di dati SQL: Caratteristiche evolute Vincoli di integrità generici: check Specifica di vincoli di ennupla (e anche vincoli più complessi, non sempre supportati) check ( Condizione ) 2 Check, esempio
DettagliVincoli, procedure e regole attive in SQL. SQL: vincoli, trigger 1
Vincoli, procedure e regole attive in SQL SQL: vincoli, trigger 1 Qualità dei dati Qualità dei dati: correttezza, completezza, attualità In molte applicazioni reali i dati sono di scarsa qualità (5% -
Dettagli24. Trigger in MySQL 5
24. Trigger in MySQL 5 I trigger sono oggetti associati a tabelle, che vengono attivati nel momento in cui un determinato evento si verifica relativamente a quella tabella. Sono stati introdotti a partire
DettagliA livello fisico, un istanza di base di dati Oracle è composta. Gubiani & Montanari Oracle Database 3
Oracle Database Express Edition Donatella Gubiani e Angelo Montanari Gubiani & Montanari Oracle Database 1 (Oracle XE) è una versione gratuita della base di dati È facile da installare e gestire Può essere
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
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 di Basi di Dati
Corso di Basi di Dati Il Linguaggio SQL Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/ SQL (Structured Query Language) e il linguaggio di riferimento per le basi di dati relazionali. Diverse
DettagliBasi di dati attive. Una base di dati è ATTIVA quando consente la definizione e la gestione di regole di produzione (regole attive o trigger).
Basi di dati attive Una base di dati è ATTIVA quando consente la definizione e la gestione di regole di produzione (regole attive o trigger). Tali regole vengono attivate in modo automatico al verificarsi
DettagliOperazioni scatenanti. Nozione ed uso. Sintassi. Esempio
Nozione ed uso Operazioni eseguite automaticamente ogni volta che avviene un certo evento Uso: Gestione di vincoli di integrità: Per fallimento Per modifica Auditing: Sicurezza Statistiche Valori derivati
DettagliA.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
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
DettagliPL/SQL e PLpgSQL. Audiolezione 28b. Necessità. Soluzioni. Embedded SQL. Alfio Ferrara - Stefano Montanelli. Estensioni procedurali di SQL
Audiolezione 28b Corso di Basi di Dati e Laboratorio PL/SQL e PLpgSQL Alfio Ferrara - Stefano Montanelli A.A. 2005/2006 Basi di Dati e Laboratorio 1 Estensioni procedurali di SQL Necessità Disporre di
Dettagliσ data 15/12/2013 data 20/12/2014
Dato lo schema: Basi di Dati Prof. Alfredo Pulvirenti A.A. 2014-2015 Prova in itinere 18 dicembre 2014 (A) EVENTO(id, titolo, data, categoria, costo_partecipazione, idcatering) ORGANIZZATORE(id,idevento)
DettagliViene richiesto di MIN CARD(S,E) = 1 UPDATE DELETE MAX CARD(S,E) = 3 INSERT UPDATE
Dato il seguente schema E/R E la sua traduzione nel seguente schema relazionale: disponibile in http://www.dbgroup.unimo.it/sire/20110513/20110513.bak Viene richiesto di 1) Risolvere la seguente interrogazione
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
DettagliBasi di dati attive. Basi di dati attive. Struttura di base dei trigger. Evento-Condizione-Azione. Sintassi SQL:1999 dei trigger
Basi di dati attive Basi di dati attive Una base di dati che offre regole attive Si parla normalmente di trigger Trigger presentati rapidamente nel corso precedente Si vogliono descrivere in modo più approfondito:
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
DettagliIMPIEGATO(Nome, Salario, DipNum) DIPARTIMENTO (DipNum, NomeManager)
BASI DI DATI ATTIVE Esercizio n.1 Dato lo schema relazionale IMPIEGATO(Nome, Salario, DipNum) DIPARTIMENTO (DipNum, NomeManager) definire le seguenti regole attive in SQL:99 T1. Quando un dipartimento
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
DettagliLaboratorio di Basi di Dati SQL avanzato
Laboratorio di Basi di Dati SQL avanzato Pierluigi Pierini Technolabs S.p.a. Pierluigi.Pierini@technolabs.it Interrogazioni nidificate Syntax: SELECT {* [, ]} FROM [,
DettagliTriggers. Antonella Poggi, Claudio Corona. Dipartimento di informatica e Sistemistica Università di Roma La Sapienza
Triggers Antonella Poggi, Claudio Corona Dipartimento di informatica e Sistemistica Università di Roma La Sapienza Progetto di Applicazioni Software Anno accademico 2008-2009 Questi lucidi sono stati prodotti
DettagliCheck, esempio. Vincoli di integrità generici. Asserzioni. Asserzioni
Vincoli di integrità generici Con i costrutti visti sinora, non è sempre possibile definire tutti i possibili vincoli di integrità. Per questo esiste l istruzione check (Condizione) La condizione specificata
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
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
DettagliBasi di Dati e Sistemi Informativi. Asserzioni, Viste e Trigger Basi di dati Attive
Basi di Dati e Sistemi Informativi Basi di dati Attive Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale Asserzioni Introdotte in SQL-2 rappresentano dei vincoli che non sono però associati
DettagliCorso 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
DettagliA.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
DettagliTecnologia delle Basi di Dati Esercitazione #4 Definizione dei trigger in Oracle
Tecnologia delle Basi di Dati Esercitazione #4 Definizione dei trigger in Oracle 1 Materiale disponibile Gli script e il testo delle esercitazioni sono disponibili nel direttorio della propria home, nella
DettagliTabelle 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
DettagliIl linguaggio SQL: trigger
Il linguaggio SQL: trigger Sistemi Informativi T Versione elettronica: 04.7.SQL.trigger.pdf DBMS attivi Un DBMS si dice attivoquando dispone di un sottosistema integrato per definire e gestire regole I
DettagliIl linguaggio SQL: transazioni
Il linguaggio SQL: transazioni Sistemi Informativi T Versione elettronica: 04.8.SQL.transazioni.pdf Cos è una transazione? Una transazione è un unità logica di elaborazione che corrisponde a una serie
DettagliIl linguaggio SQL: trigger. Versione elettronica: 04.7.SQL.trigger.pdf
Il linguaggio SQL: trigger Sistemi Informativi T Versione elettronica: 04.7.SQL.trigger.pdf DBMS attivi Un DBMS si dice attivoquando dispone di un sottosistema integrato per definire e gestire regole I
DettagliCorso 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
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,
DettagliIntroduzione. i trigger rendono reattivo il comportamento del sistema alle sollecitazioni esterne.
Trigger Introduzione L introduzione di trigger all interno di una Base di Dati permette la gestione automatica di particolari procedure in risposta a determinati eventi esterni; Basi di Dati di questo
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
DettagliCorso di PHP. Prerequisiti. 8.1 PHP e MySQL. Conoscenza MySQL Tecnica della programmazione
Corso di PHP 8.1 PHP e MySQL 1 Prerequisiti Conoscenza MySQL Tecnica della programmazione procedurale ad oggetti Principi di programmazione web Programmazione elementare in PHP 2 1 Introduzione In questa
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,
DettagliSistemi informativi e basi di dati. Il modello relazionale. SQL come DCL Utilizzo di un DBMS Reale. Forme normali. Basi di dati direzionali
Le transazioni Appunti dalle lezioni SQL come DDL Sistemi informativi e basi di dati La Progettazione Concettuale SQL come DML Il modello relazionale La Progettazione Logica SQL come DCL Utilizzo di un
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
DettagliLa 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
Dettagli4. I moduli in Access 2000/2003
LIBRERIA WEB 4. I moduli in Access 2000/2003 Il modulo è uno degli oggetti del database di Access e rappresenta un insieme di dichiarazioni e routine scritte con il linguaggio Visual Basic, memorizzate
DettagliLaboratorio 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 è
DettagliTecnologia di un Database Server (centralizzato) Introduzione generale
Introduzione Basi di Dati / Complementi di Basi di Dati 1 Tecnologia di un Database Server (centralizzato) Introduzione generale Angelo Montanari Dipartimento di Matematica e Informatica Università di
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
DettagliVARIABILI, ASSEGNAZIONE, DECISIONI
LEZIONE-TSQL-03 PROGRAMMAZIONE (VER02) PAG. 1 / 6 LEZIONE-TSQL-03 PROGRAMMAZIONE (VER02) T-SQL PROGRAMMAZIONE PARTE TERZA VARIABILI, ASSEGNAZIONE, DECISIONI Tratto da Gregory A. Larsen, http://www.databasejournal.com/features/mssql/article.php/3087431/t-sql-programming-part-1---defining-variables-and-if-logic.htm
Dettagli8 SQL : Check, Asserzioni,Viste
Corso di Laurea in Ingegneria Gestionale SAPIENZA Università di Roma Esercitazioni del corso di Basi di Dati Prof.ssa Catarci e Prof.ssa Scannapieco Anno Accademico 2011/2012 8 SQL : Check, Asserzioni,Viste
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,
DettagliCorso di Basi di Dati
Corso di Laurea in Ingegneria Gestionale Sapienza - Università di Roma Corso di Basi di Dati A.A. 2016/2017 7 SQL : Check, Asserzioni,Viste Tiziana Catarci Ultimo aggiornamento : 22/02/2017 Costrutti Avanzati
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 Settima parte Interrogazione di una
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
DettagliCREATE VIEW. CREATE VIEW <nome_vista> AS (SELECT <lista_campi> FROM <lista_tabelle> WHERE <condizione>);
SQL AVANZATO VIEW VISTE UTENTE VIEW (Viste utente) Le VIEW sono tabelle virtuali il cui contenuto (colonne e righe) è definito da una query Le VIEW sono normalmente utilizzate per: analizzare, semplificare
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
DettagliLezione 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
DettagliLezione 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
DettagliBasi di dati attive 1
Basi di dati attive 1 Basi di dati attive Una base di dati che offre regole attive Si parla normalmente di trigger Si vogliono descrivere: definizione in SQL:1999 varianti ed evoluzioni terminazione e
DettagliBasi di Dati CREAZIONE E POPOLAMENTO DI UNA BASE DI DATI
Basi di Dati CREAZIONE E POPOLAMENTO DI UNA BASE DI DATI La finalità di questa esercitazione è quella di creare, date delle specifiche progettuale, appositi script di creazione e popolamento di una base
DettagliInterrogazioni 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
DettagliGestire il database attraverso Javascript. Antonio Gallo
Gestire il database attraverso Javascript Antonio Gallo info@laboratoriolibero.com 1 Aprire il database File: 1_creazione_db.html Per aprire un database basta usare il metodo OpenDatabase: var db = window.opendatabase("note",
DettagliGestione delle transazioni. Basi di dati. Elena Baralis 2007 Politecnico di Torino 1 D B M G D B M G 2. Linguaggio SQL: costrutti avanzati
Linguaggio SQL: costrutti avanzati D B M G Introduzione Transazioni in SQL Proprietà delle transazioni D B M G 2 2007 Politecnico di Torino 1 D B M G Esempio applicativo Operazioni bancarie operazione
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
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
DettagliVincoli di integrità
Vincoli di integrità In SQL è possibile specificare dei vincoli di integrità sui dati, sia quelli propri del modello relazionale che quelli che specificano le regole aziendali. Vincoli di dominio. Essi
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
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;
Dettagli2011 Politecnico di Torino 1
SQL per le applicazioni Esercitazione PHP e MySQL Svolgimento D B M G Passi di risoluzione creazione e popolamento della base di dati Creazione di un script SQL Passo 2 creazione di una query d 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
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezioni 6 7 Raffaella Gentilini 1 / 46 Sommario 1 Subquery (o Interrogazioni Nidificate) Interrogazioni Annidate con Predicati di Confronto Interrogazioni Annidate con
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)
DettagliVincoli di integrità generici: check
Lezione 5 Vincoli di integrità e Viste 1 Vincoli di integrità generici: check La clausola check permette di restringere i domini e specificare predicati che devono essere soddisfatti ogni volta che un
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
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
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
DettagliAtzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 : SQL Operazioni di aggiornamento operazioni di inserimento: insert eliminazione: delete modifica: update di una o più ennuple di una
DettagliInterrogare 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 è
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
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
DettagliBasi di Dati Complementi. 2. Tecnologie per DBMS -2.4 Introduzione alle Transazioni e Buffer Manager
Basi di Dati Complementi 2. Tecnologie per DBMS -2.4 Introduzione alle Transazioni e Buffer Manager Andrea Maurino 2007 2008 Parte del materiale è stato fornito dal prof. Batini Fonti Libro Architetture
DettagliCorso di. Basi di Dati I. 8. Esercitazioni in SQL: Interrogazioni nidificate
Corso di Basi di Dati 8. Esercitazioni in SQL: Interrogazioni nidificate A.A. 2016 2017 Interrogazioni nidificate Come abbiamo visto, in una query SQL il comando where è seguito da un argomento che può
DettagliBasi di dati. Gabriella Trucco
Basi di dati Gabriella Trucco gabriella.trucco@unimi.it Algebra relazionale Definizione: insieme di operazioni (query) che servono per manipolare relazioni (tabelle). Formalizzazione matematica del modo
DettagliSQL. Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative
SQL SQL Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative l utente specifica quale informazione è di suo interesse, ma non come estrarla dai dati Le interrogazioni vengono
Dettagli