UNITA`: trigger e viste

(Modulo didattico: estrazione di informazione)

Le interrogazioni servono per estrarre informazione da uno schema logico. Le viste sono lo strumento per dare un nome alle interrogazioni. In questo modo le interrogazioni si trasformano in tabelle virtuali. Le viste sono utili per: Le viste sono uno strumento che non pone problemi se usate solo come abbreviazioni di interrogazioni. Diventano un problema nel momento in cui le si tratta come tabelle a tutti gli effetti, applicando operazioni di aggiornamento. Un'operazione di aggiornamento su una vista e` intrinsecamente non ben definita: una vista, infatti, non e`, in generale, una tabella con (almeno) un identificatore. In piu`, tecnicamente, l'aggiornamento di una vista si traduce in un aggiornamento delle tabelle su cui essa si basa. Per questo motivo, solo in situazioni molto semplici, ben definite, esiste un accordo unanime su come si aggiorna una vista. Al di fuori di queste situazioni i vari produttori di DBMS forniscono le loro soluzioni. La soluzione Oracle 8i per l'aggiornamento di viste inerentemente non aggiornabili e` costituita dai trigger INSTEAD OF. In generale, i trigger sono uno strumento comune ai DBMS. Essi sono procedure attivate da eventi all'interno del DBMS, come, ad esempio la modifica dei valori di una tabella. In particolare, i trigger INSTEAD OF di Oracle 8i servono per eseguire un insieme di passi che si sostituiscono completamente alle operazioni dell'evento che innesca l'attivazione del trigger stesso.

Prerequisiti
E` necessario conoscere i contenuti delle unita` didatticheInterrogazioni semplici,Operatori aggregati/raggruppamento,Quantificazione esistenziale/universale.

Obiettivo
Apprendere a definire viste e a valutare i problemi relativi all'applicazione di un'operazione di modifica (insert, update, delete) ad una vista. Apprendere i dettagli fondamentali dei blocchi di codice per definire un trigger.

Attivita`
Attraverso esempi, l'unita` richiama le caratteristiche base dei trigger "standard", fornisce una panoramica di esempi che riassumono l'utilita` pratica dell'introduzione della nozione di vista, fornisce un esempio mirato comprendere la definizione di viste aggiornabili in Oracle 8i, attraverso un trigger INSTEAD OF.

Contenuti

Sommario
I trigger BEFORE/AFTER possono essere usati per ottenere uno schema logico la cui semantica sia coerente con quella espressa dallo schema concettuale di cui e` traduzione.
Le viste sono uno strumento efficace se usate per astrarre dalla struttura di uno schema logico. Diventano uno strumento di programmazione da trattare con attenzione non appena si vogliono usare come tabelle a tutti gli effetti, dato che tabelle non sono. La semantica dell'aggiornamento di viste e definible in Oracle 8i, usando i trigger INSTEAD OF, che permettono di ridefinire completamente una operazione di aggiornamento su una vista.

Capitoli del testo
Del capitolo 4, il paragrafo 4.8.