SQL: Lezione 10 Nataliya Rassadko

Slides:



Advertisements
Presentazioni simili
Interrogazioni Semplici Le operazioni di interrogazione vengono specificate per mezzo dellistruzione select select ListaAttributi from ListaTabelle [where.
Advertisements

Soluzione Esercitazione 4 Blocco slides cap04-III.
Ricorsione in SQL-99.
Principale limitazione di AR e SQL-92: interrogazioni ricorsive
Structured Query Language
Microsoft SQL Server 2008 Utilizzo. Creazione DataBase CREATE DATABASE CREATE DATABASE Cinema.
Structured Query Language (SQL) Presentazione 13.1 Informatica Generale (Prof. Luca A. Ludovico)
SQL92 e XQuery1.0 a confronto1 SQL92 E XQUERY1.0 A CONFRONTO Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria - Sede di Modena Corso.
Biglietti e Ritardi: schema E/R
1 Misura Derivata: esempio dei biglietti CostoMedioBiglietto (CMB) calcolato come INCASSO/NUM_BIG. SUM AVG Implementazione in Analysis Services 1. Si definisce.
Biglietti: schema E/R.
1 Biglietti: schema E/R. 2 Biglietti: albero degli attributi.
Principale limitazione di AR e SQL-92: interrogazioni ricorsive IMPIEGATO NOMENOMECAPO RossiVerdi NeriVerdi DeSio TucciDeSio DeLucaDeSio Lazio selezionare.
DML – Data Manipulation Language
Esercitazioni del Corso di Sistemi Informativi Marina Mongiello
Esercitazioni del Corso di Sistemi Informativi Marina Mongiello
Progettazione ER Un database universitario contiene informazioni riguardanti i professori (identificati dal codice fiscale) e informazioni relative ai.
SQL Dati i seguenti schemi relazionali:
19/01/2014 Viste. 19/01/2014 Viste Le Viste Logiche o Viste o View possono essere definite come delle tabelle virtuali, i cui dati sono riaggregazioni.
Tecnologia di un data base server: Controllo della Concorrenza
Laboratorio di Basi di Dati Introduzione ad Access 2ª Parte.
SQL Esercitazione per il corso “Basi di Dati” Gabriel Kuper
SQL: Lezione 7 Nataliya Rassadko
SQL: Lezione 6 Nataliya Rassadko
Nataliya Rassadko SQL: Lezione 9 Nataliya Rassadko
SQL Per la modifica di basi di dati
SQL Per la definizione di basi di dati SQL per definire ed amministrare Ogni utente puo definire una base di dati di cui diventa lamministratore potendo.
Esercitazione.
Duplicati Lalgebra relazionale non ammette duplicati, SQL li ammette. Quindi select Città from Persona where Cognome= Rossi estrae una lista di città in.
Calcolo di resistenze viste da vari punti
Definizioni e operazioni
SELECT STATEMENT Clausola WHERE permette di limitare il numero di record da estrarre SELECT */ [DISTINCT] colonna/ espressione [alias],… FROM table [WHERE.
Viste. Cosè una vista? è possibile creare un subset logico di dati o una combinazione di dati una vista è una tabella logica basata su una tabella o su.
MySQL Query Performance Optimization
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Capitolo 4:SQL 16/10/2002.
Basi di dati Claudia Raibulet
SQL: Structured Query Language
Corso di INFORMATICA anno scolastico 2009/10 Linguaggio SQL OPERATORI INSIEMISTICI IN SQL Siano due tabelle: GiochiSolitari(CodiceGioco, NomeGioco, PrezzoGioco)
Example instruction Instruction Name Meaning (RTL Language) ADD R1, R2, R3 AddRegs[R1]
L’algebra relazionale
Basi di Dati e Sistemi Informativi
Gerarchie Ricorsive Una gerarchia ricorsiva deriva dalla presenza di una ricorsione o ciclo (un anello nel caso più semplice) nello schema operazionale.
Basi di Dati e Sistemi Informativi
Esercizi su File.
BIOINFO3 - Lezione 51 INSERIMENTO DEI DATI Visto come si creano le tabelle (sinora tristemente vuote), cominciamo ad occuparci di come riempirle con dei.
Elaborazione dati informatici
Basi di dati - Modelli e linguaggi di interrogazione- Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone Copyright © The McGraw-Hill.
Sistemi Informativi Insieme di “strutture” in grado di acquisire, elaborare, trasmettere ed archiviare informazioni in genere ad uso di un’organizzazione.
Informatica II – Basi di Dati (07/08) – Parte 2 Gianluca Torta Dipartimento di Informatica dell’Università di Torino
Informatica II – Basi di Dati (07/08) – Parte 2 Gianluca Torta Dipartimento di Informatica dell’Università di Torino
SEFOC – SETTORE FORMAZIONE CONTINUA DEL PERSONALE CORSO MYSQL AVANZATO ROBERTO PENNOLINO – CARMELO MASSIMO PRIOLO PALERMO – 07 | 06 | 2011.
Esercitazione 7.
Automi temporizzati cooperanti (TCA) . Automi cooperanti (CA)  Un CA consiste di n automi finiti, ciascuno con insieme di stati, stato iniziale e tabella.
Il Linguaggio SQL. Le interrogazioni in SQL (continua…) La parte di SQL dedicata alla formulazione di interrogazioni fa parte del DML. SQL esprime le.
SQL, esempi 30/10/2014Basi di dati SQL1. 30/10/2014Basi di dati SQL2 CREATE TABLE, esempi CREATE TABLE corsi( codice numeric NOT NULL PRIMARY KEY, titolo.
Algebra relazionale (III). Esempi di Interrogazioni: 3 Trovare matricola e nome dei capi i cui impiegati guadagnano tutti più di Tutti gli impiegati?
1 Basi di Dati S tructured Q uery L anguage Appunti Matteo Longhi.
Interrogazioni (parte 2)
Esercitazioni PLA/PAL
Raggruppamenti e target list scorretta select padre, avg(f.reddito), p.reddito from persone f join paternita on figlio = nome join persone p on padre =
Lezione 6 - SQL. Linguaggi per DB Per interagire con le basi di dati occorre un linguaggio Linguaggio SQL (Structured Query Language), linguaggio standardizzato.
Interrogazioni Le interrogazioni in SQL sono formulate in modo dichiarativo specificando cioè cosa si vuole ottenere e non come lo si vuole ottenere. L’interrogazione.
PROBLEMI SENZA PROBLEMI!!!
Funzionalità del DBMS relazionale l Funzioni per –definizione della base di dati –inserimento / rimozione /aggiornamento di informazioni deve soddisfare.
Approfondimenti SQL.
Basi di Dati e Sistemi Informativi Esercitazione: Il Linguaggio SQL (DDL+DML) Home page del corso:
E. Tinelli SQL come linguaggio di manipolazione dei dati 1 DML – Data Manipulation Language.
Il linguaggio SQL (Structured Query Language) è il linguaggio standard per creare, manipolare e interrogare database relazionali. SQL non è case-sensitive:
Esercizi SQL Group by. CREATE TABLE dipendente (codDip CHAR(8) NOT NULL UNIQUE PRIMARY KEY, cognome CHAR(60) NOT NULL, nome CHAR(60) NOT NULL, stipendio.
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Transcript della presentazione:

SQL: Lezione 10 Nataliya Rassadko

Agenda Timestamp based protocollo Esercizi su Timestamping Conflict-serializability BCNF Alcuni note su SQL

Timestamping: Problem statement Ogni transazione è associata con un numero unico – timestamp Counter System clock Con ogni elemento di DB ci sono associati RT(X), WT(X), C(X) Ordine delle transazione è seriale Problemi Read too late: TS(T) <RT(X), T vuole leggere qualcosa con può leggere più Write too late: WT(X)<TS(T)<RT(X), T vuole scrivere qualcosa nel elemento che già nel uso

Timestamping: Possibilità Richesta deve essere garantita Kill T, se T vuole cambiare la realtà, e restart T con nuovo timestamp – rollback Delay T e dopo decidere se garantire la richiesta dal T (e.g., si può garantire dirty read)

Timestamping: Algoritmo per Read(X) Se TS(T)>=WT(X), T può leggere X If C(X)=true e TS(T)>RT(X), RT(X):=TS(T) Altrimenti, non cambiare RT(X) If C(X)=false, delay T finchè C(X)=true o transazione che scrive in X finishe Se TS(T) < WT(X), T non può leggere X Rollback T

Timestamping: Algoritmo per Write(X) Se TS(T)>=WT(X) e TS(T)>=RT(X), T può scrivere X T scrive in X WT(X):=TS(T) C(X):=false Se TS(T) =RT(X), T può scrivere X Ma solo se C(X)=true Altrimenti delay T TS(T)<RT(X), T non può scrivere X Rollback T

Timestamping: Esempio st2;st3;st1;r1(B);r2(A);r3(C);w1(B);w1(A);w2(C); w3(A) r1(B) –> RT(B):=st1 r2(A) -> RT(A):=st2 r3(C) -> RT(C):=st3 w1(B) –> WT(B):=st1 w1(A) -> WT(A):=st1 w2(C) -> C è in utilizzo da T3 con st3> st2 -> Abort2 w3(A) e RT(A)=st2 -> T3 può scrivere in A ma se C(A):=true C(A)=false ->delay T3

Esercizi St1;r1(A);st2;w2(B);r2(A);w1(B) St1;st2;st3;r1(A);r1(B);w1(C);r3(B);r3(C);w2(B);w3(A) St1;st3;st2;r1(A);r1(B);w1(C);r3(B);r3(C);w2(B);w3(A)

Conflict-serializability: Esercizi r1(A);w1(B);r2(B);w2(C);r3(C);w3(A) w3(A);r1(A);w1(B);r2(B);w2(C);r3(C) r1(A);r2(A);w1(B);w2(B);r1(B);r2(B);w2(C);w1(D) r1(A);r2(A);r1(B);r2(B);r3(A);r4(B);w1(A);w2(B) Selezionarte operazioni sullo stesso elemento X Sequenza deve essere preservata Guardare ogni coppia di operazioni selezionate in seq Se almeno una operazione è w, arco deve essere inserito Arco da operazione più recente a meno recente

BCNF: Esercizi ABCD, AB->C, C->D, D->A ABCD, B->C, B->D ABCD, AB->C, BC->D, CD->A, AD->B ABCD, A->C, B->C, C->D, D->A ABCDE, AB->C, DE->C, B->D ABCDE, AB->C, C->D, D->B, D->E

SQL SELECT-FROM-WHERE Subquery sono in FROM o WHERE Attenti al risultato di subquery in WHERE: insieme o valore JOIN Natural, INNER, FULL OUTER, LEFT OUTER, RIGHT OUTER NULL Aggregazione e GROUP BY NULL HAVING come WHERE ma condizione sul valore aggregato INTERSECT, UNION, EXCEPT Tutti gli attributi di relazioni-argomenti sono UGUALE MIN(COUNT) - subquery

Buon Natale Ci vediamo al esame!