La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Basi di dati attive Dispongono di un sottosistema integrato per definire e gestire regole di produzione (regole attive) Regole di tipo: Evento-Condizione-Azione.

Presentazioni simili


Presentazione sul tema: "Basi di dati attive Dispongono di un sottosistema integrato per definire e gestire regole di produzione (regole attive) Regole di tipo: Evento-Condizione-Azione."— Transcript della presentazione:

1 Basi di dati attive Dispongono di un sottosistema integrato per definire e gestire regole di produzione (regole attive) Regole di tipo: Evento-Condizione-Azione Il processore delle regole (rule engine) controlla lesecuzione delle regole, tiene traccia degli eventi e manda in esecuzione le regole in base a proprie politiche. Alternarsi di transazioni, lanciate dagli utenti, e regole, lanciate dal sistema. Comportamento reattivo.

2 Le regole attive (1) Gestiscono vincoli di integrità Calcolano dati derivati Gestiscono eccezioni Codificano regole aziendali

3 Le regole attive (2) La conoscenza di tipo reattivo viene sottratta ai programmi applicativi e codificata sotto forma di regole attive, che fanno parte del DDL, e sono condivise da tutte le applicazioni. Si modificano le regole, non le applicazioni.

4 Trigger (1) Semplici regole presenti nei Data Base relazionali. Basati sul paradigma Evento-Condizione-Azione (ECA) Eventi: primitive per la manipolazione dei dati in SQL (insert, delete, update) Condizione: predicato booleano espresso in SQL (può talvolta mancare) Azione: sequenza di primitive SQL generiche

5 Trigger (2) I trigger fanno riferimento a una tabella detta target: rispondono a eventi relativi a tale tabella. Secondo il paradigma ECA un trigger è: attivato da uno dei suoi eventi valutato durante la verifica delle sue condizioni eseguito I trigger possono anche essere in cascata: azione di un trigger è levento del successivo.

6 Trigger: modalità I trigger possono avere modalità: -immediata: -Opzione after: la valutazione avviene immediatamente dopo levento che li ha attivati -Opzione before: la valutazione del trigger precede logicamente levento a cui si riferisce - differita: la valutazione avviene alla fine della transazione, a seguito del commit-work.

7 Trigger: granularità I trigger hanno due livelli di granularità: - di tupla (row-level): attivazione per ogni tupla coinvolta nelloperazione (istanza). - di primitiva (statement-level): lattivazione avviene in riferimento alla primitiva, sono coinvolte tutte le tuple coinvolte nella primitiva (insieme)

8 Creazione di un Trigger create trigger NomeTrigger modo evento {, evento} on TabellaTarget [[referencing referenza for each row [when ( PredicatoSQL)]] Blocco PL/SQL modo: after o before evento: insert, delete o update referenza: consente di introdurre dei nomi di variabili for each row: solo nel caso di granularità a livello di tupla. sintassi: old as VariabileOld new as VariabileNew

9 Trigger (esempio) create trigger ControlloSalari after update of Salario on Impiegato then update Impiegato set Salario=0.9*Salario where (selact avg(Salario) from Impiegato)>100


Scaricare ppt "Basi di dati attive Dispongono di un sottosistema integrato per definire e gestire regole di produzione (regole attive) Regole di tipo: Evento-Condizione-Azione."

Presentazioni simili


Annunci Google