DATE CHRIS SQL e Teoria Relazionale
←
→
Trascrizione del contenuto della pagina
Se il tuo browser non visualizza correttamente la pagina, ti preghiamo di leggere il contenuto della pagina quaggiù
LA TECHNOLOGY TRANSFER PRESENTA CHRIS DATE SQL e Teoria Relazionale COME SCRIVERE UN CORRETTO SQL ROMA 8-10 NOVEMBRE 2010 RESIDENZA DI RIPETTA - VIA DI RIPETTA, 231 info@technologytransfer.it www.technologytransfer.it
SQL E TEORIA RELAZIONALE DESCRIZIONE PROGRAMMA SQL è onnipresente. Ma SQL è complicato, difficile, incline all’errore e con 1. Preparare la scena una difficoltà di testing. Di conseguenza, per avere qualche speranza di scrivere un corretto SQL, bisogna seguire qualche disciplina. Quale disci- • Il modello relazionale di Codd plina? La disciplina di usare SQL in modo relazionale. Ma che cosa vuol • Terminologia SQL e terminologia dire? SQL non è comunque relazionale? Relazionale Naturalmente SQL è il linguaggio standard che si usa con i database re- • Modello e implementazione lazionali, ma questo non lo rende relazionale! La triste verità è che SQL • Proprietà delle relazioni si allontana dalla teoria relazionale in molti modi, la duplicazione delle ri- • Relazioni base e derivate ghe e i nulls sono degli esempi ovvi, ma non sono i soli. I sistemi basati • Relazioni e relvars su SQL Vi forniscono la corda per impiccarVi e, per evitare di finire appe- • Il Terzo Manifesto e Tutorial D si, avete la necessità di conoscere la teoria relazionale, di capire quanto • L’affermazione di Wittgenstein SQL è lontano da quella teoria così da evitare i problemi che questo cau- sa. C’è una grande quantità di “cattiva pratica” nell’uso di SQL e questa 2. Tipi e domini “pratica” è persino raccomandata in libri di testo o altre pubblicazioni e una panoramica su questa letteratura è un esercizio veramente sconfor- • I domini sono tipi tante. Il modello relazionale, a 40 anni dalla sua nascita, non sembra es- • Tipi e operatori sere ben capito dalla maggior parte della comunità database e anche • Tipi di sistema e definiti dall’utente per queste ragioni il seminario usa il modello relazionale come un princi- • Tipi scalari e non scalari pio organizzatore, ne descrive le caratteristiche e spiega come usare • Tipi scalari in SQL SQL per implementare queste caratteristiche. • Type cheking e coercizione in SQL • Espressioni “possibilmente non Durante il seminario verranno svolte esercitazioni. deterministiche” • Tipi riga e tabella in SQL Alla fine del seminario i partecipanti: • Capiranno la Teoria Relazionale 3. Tuple e relazioni, righe e tabelle • Capiranno come i principi relazionali rafforzano la logica di SQL • Cosa è una tupla? • Capiranno l’ampiezza e la profondità di quei principi • Righe in SQL • Sapranno come scrivere un codice SQL complesso con la certezza • Cosa è una relazione? della sua correttezza • Le relazioni sono n-dimensionali • Confronti relazionali • TABLE_DUM e TABLE_DEE • Tabelle in SQL DOCUMENTAZIONE • Naming della colonna in SQL Oltre alla documentazione tecnica costituita dalla copia 4. Niente duplicati e niente nulls delle slides proiettate dal docente, I partecipanti riceve- ranno una copia del libro di Chris Date SQL and Relatio- • Cosa c’è di sbagliato con i duplicati? nal Theory: How to Write Accurate SQL Code (O’Reilly, • Evitare duplicati in SQL 2009). • Cosa c’è di sbagliato con i nulls? • Evitare i nulls in SQL • Una osservazione sull’Outer Join • Implicazioni e ramificazioni 5. Relvars e tabelle di base • Data definition • I_INSERT, I_DELETE e altre abbreviazioni • Aggiornamento è set level • Relational assignment • Chiavi candidate e chiavi esterne • Predicati e proposizioni • The Closed World Assumption
6. SQL e l’Algebra Relazionale I: 10. SQL e Logica I: 14. Un approccio relazionale Gli operatori originali Calcolo Relazionale alla Missing Information • Importanza della chiusura • Il linguaggio naturale è spesso • Preliminari • Regole di deduzione per il Rela- ambiguo • Scomposizione verticale oriz- tional Type • Proposizioni e predicati zontale • Renaming dell’attributo • Quantificazione: • Varietà di Missing Information • Restrizione, proiezione, join EXISTS, FORALL, UNIQUE • Vincoli e queries • Unione, intersezione, differenza • Variabili di range e correlazione • Risposte “non so” • Operatori primitivi • Espressioni di calcolo • WITH e espressioni complesse • Queries e vincoli • Cosa significano le espressioni • Supporto SQL 15. Teoria di database design • Valutare le espressioni SQL • Espressioni di trasformazione • Ottimizzazione • Completezza relazionale • Il posto della teoria di design • FDs e BCNF • JDs e 5NF 7. SQL e Algebra Relazionale II: 11. SQL e Logica II: • 6NF Altri operatori Usare la logica per scrivere • La normalizzazione non è una codice SQL panacea • Unione esclusiva • Semijoin e semidifferenza • Identità importanti • Ma non denormalizzare! • Extend • SQL e implicazione • Il Principio del design ortogonale • Image relations • SQL e FORALL • Osservazioni sul design fisico • Divide • Subqueries correlate • Aggregazione e sommario • Naming delle sub-espressioni • Relation valued attributes • Trattare con l’ambiguità • “What if” queries • Usare COUNT • Cosa dire su ORDER BY? • Comparazioni ALL o ANY PARTECIPANTI • Queries ricorsive • GROUP BY e HAVING • Progettisti e Implementatori di applicazioni database 8. SQL e vincoli 12. Altri argomenti SQL • Information Modeler e progettisti database • Vincoli di tipo • Tabelle esplicite • Database Administrator • Vincoli di tipo in SQL • Variabili di range • Data Administrator • Vincoli di database • Subqueries di tabella, di riga e • Professori di Computer Science • Vincoli di database in SQL scalari • Consulenti database • Il ruolo delle transazioni • Espressioni “possibilmente non • Personale responsabile della valu- • Checking immediato o differito deterministiche” tazione e acquisizione di prodotti • Multiple assignment • Operazioni del cursore DBMS • Vincoli e predicati • Problematiche dell’insieme vuoto • La regola d’oro • Una grammatica BNF Il seminario non si rivolge a princi- • Correttezza e coerenza pianti, i partecipanti devono avere una familiarità con i concetti data- 13. Il Modello Relazionale base e il linguaggio SQL. Verranno 9. SQL e views • Perché il database deve essere svolte delle esercitazioni in classe • Le views sono relvars relazionale con carta e penna. • Il Principio dell’intercambiabilità • Il modello relazionale e gli altri • Views e predicati modelli • Operazioni di retrieval • Teoria è pratica • Views e vincoli • Il modello relazionale definito • Operazioni di updating • Cosa rimane da fare? • A cosa servono veramente le • Il futuro di SQL views? • Views e snapshots
INFORMAZIONI QUOTA DI MODALITÀ D’ISCRIZIONE CONDIZIONI GENERALI TUTELA DATI PERSONALI PARTECIPAZIONE In caso di rinuncia con Il pagamento della quota, Ai sensi dell’art. 13 della legge € 1500 (+iva) IVA inclusa, dovrà essere preavviso inferiore a 15 giorni n. 196/2003, il partecipante è effettuato tramite bonifico, verrà addebitato il 50% della La quota di partecipazione informato che i suoi dati codice Iban: quota di partecipazione, in comprende documentazione, personali acquisiti tramite la IT 34 Y 03069 05039 048890270110 caso di rinuncia con preavviso colazioni di lavoro e coffee scheda di partecipazione al Banca Intesa Sanpaolo S.p.A. inferiore ad una settimana breaks. seminario saranno trattati da Ag. 6787 di Roma verrà addebitata l’intera quota. intestato alla Technology Transfer anche In caso di cancellazione del Technology Transfer S.r.l. con l’ausilio di mezzi elettronici, seminario, per qualsiasi LUOGO e la ricevuta di versamento con finalità riguardanti causa, la responsabilità della Roma, Residenza di Ripetta inviata insieme alla scheda l’esecuzione degli obblighi di iscrizione a: Technology Transfer si intende Via di Ripetta, 231 derivati dalla Sua limitata al rimborso delle quote TECHNOLOGY partecipazione al seminario, di iscrizione già pervenute. TRANSFER S.r.l. per finalità statistiche e per DURATA ED ORARIO Piazza Cavour, 3 l’invio di materiale SCONTI DI GRUPPO 3 giorni: 9.30-13.00 00193 ROMA promozionale dell’attività di 14.00-17.00 (Tel. 06-6832227 Se un’azienda iscrive allo Technology Transfer. Fax 06-6871102) stesso evento 5 partecipanti, Il conferimento dei dati è pagherà solo 4 partecipazioni. facoltativo ma necessario per Chi usufruisce di questa la partecipazione al seminario. entro il 25 Ottobre 2010 agevolazione non ha diritto ad Il titolare del trattamento dei Vi consigliamo di far precedere altri sconti per lo stesso evento. dati è Technology Transfer, la scheda d’iscrizione da una Piazza Cavour, 3 - 00193 prenotazione telefonica. ISCRIZIONI IN ANTICIPO Roma, nei cui confronti il I partecipanti che si iscriveranno partecipante può esercitare i È previsto il servizio di al seminario 30 giorni prima diritti di cui all’art. 13 della traduzione simultanea avranno uno sconto del 5%. legge n. 196/2003. CHRIS DATE nome ...................................................................... SQL E TEORIA RELAZIONALE COME SCRIVERE UN CORRETTO SQL cognome ................................................................ funzione aziendale ................................................. Roma 8-10 Novembre 2010 Timbro e firma Residenza di Ripetta Via di Ripetta, 231 azienda .................................................................. Quota di iscrizione: partita iva ............................................................... € 1500 (+iva) codice fiscale ......................................................... indirizzo .................................................................. In caso di rinuncia o di cancellazione dei seminari valgono le condizioni generali riportate all’interno. città ........................................................................ cap ......................................................................... provincia ................................................................ telefono .................................................................. Da restituire compilato a: Technology Transfer S.r.l. Piazza Cavour, 3 - 00193 Roma fax .......................................................................... Tel. 06-6832227 - Fax 06-6871102 info@technologytransfer.it È previsto il servizio di traduzione simultanea e-mail ..................................................................... www.technologytransfer.it
DOCENTE Chris Date è uno dei nomi più importanti nell'intero campo del computing. È stato inserito nel 2004 nella Com- puting Industry Hall of Fame. Autore, presentatore, ricercatore e consulente indipendente specializzato nella tecnologia del database relazionale, ha la grandissima capacità di comunicare soggetti tecnici complessi in maniera chiara e comprensibile. Il suo libro An Introduction to Database Systems: Vol. I, che rappresenta il testo standard in questo campo, ha venduto più di 800.000 copie ed è usato come libro di testo in centinaia di università in tutto il mondo. È autore di molti autorevoli libri sulla tecnologia database, includendo i più recenti: • Databases, Types, and the Relational Model: The Third Manifesto (co-autore con Hugh Darwen, 2006) - Addison-Wesley • Date on Database: Writings 2000-2006 (2006) - Apress • Logic and Databases: The Roots of Relational Theory (2007) - Trafford • The Relational Database Dictionary, Extended Edition (2008) - Apress • SQL and Relational Theory: How to Write Accurate SQL Code (2009) - O'Reilly • Database Explorations: Essays on The Third Manifesto and Related Matters (co-autore con Hugh Darwen, uscirà nel 2010) Chris Date è presente dal 2004 nella Computing Industry Hall of Fame. È noto per la sua grande capacità di comunicare argomenti tecnici complessi in maniera chiara e comprensibile.
Puoi anche leggere