Differenza tra trigger e stored procedure

Differenza tra trigger e stored procedure
Differenza tra trigger e stored procedure

Video: Differenza tra trigger e stored procedure

Video: Differenza tra trigger e stored procedure
Video: Aritmetica dei Puntatori (Relazione tra Array e Puntatori) in C 2024, Novembre
Anonim

Trigger e stored procedure

In un database, un trigger è una procedura (segmento di codice) che viene eseguita automaticamente quando si verificano determinati eventi in una tabella/vista. Tra gli altri usi, i trigger vengono utilizzati principalmente per mantenere l'integrità in un database. Una stored procedure è un metodo che può essere utilizzato dalle applicazioni che accedono a un database relazionale. In genere, le procedure memorizzate vengono utilizzate come metodo per convalidare i dati e controllare l'accesso a un database.

Cosa sono i Trigger?

Un trigger è una procedura (segmento di codice) che viene eseguita automaticamente quando si verificano determinati eventi in una tabella/vista di un database. Tra gli altri usi, i trigger vengono utilizzati principalmente per mantenere l'integrità in un database. I trigger vengono utilizzati anche per applicare le regole aziendali, controllare le modifiche nel database e replicare i dati. I trigger più comuni sono i trigger DML (Data Manipulation Language) che vengono attivati quando i dati vengono manipolati. Alcuni sistemi di database supportano trigger non di dati, che vengono attivati quando si verificano eventi DDL (Data Definition Language). Alcuni esempi sono trigger che vengono attivati quando vengono create tabelle, durante le operazioni di commit o rollback, ecc. Questi trigger possono essere usati soprattutto per il controllo. Il sistema di database Oracle supporta i trigger a livello di schema (ovvero i trigger attivati quando gli schemi del database vengono modificati) come After Creation, Before Alter, After Alter, Before Drop, After Drop, ecc. I quattro tipi principali di trigger supportati da Oracle sono i trigger a livello di riga, Trigger a livello di colonna, trigger per ogni tipo di riga e trigger per ogni tipo di istruzione.

Cosa sono le stored procedure?

Una procedura memorizzata è un metodo che può essere utilizzato da un'applicazione che accede a un database relazionale. In genere, le procedure memorizzate vengono utilizzate come metodo per convalidare i dati e controllare l'accesso a un database. Se alcune operazioni di elaborazione dati richiedono l'esecuzione di più istruzioni SQL, tali operazioni vengono implementate come procedure memorizzate. Quando si richiama una procedura memorizzata, è necessario utilizzare un'istruzione CALL o EXECUTE. Le stored procedure possono restituire risultati (ad esempio i risultati delle istruzioni SELECT). Questi risultati possono essere utilizzati da altre stored procedure o da applicazioni. I linguaggi utilizzati per scrivere le stored procedure in genere supportano strutture di controllo come if, while, for, ecc. A seconda del sistema di database utilizzato, è possibile utilizzare diversi linguaggi per implementare le stored procedure (ad es. PL/SQL e java in Oracle, T- SQL (Transact-SQL) e. NET Framework in Microsoft SQL Server). Inoltre, MySQL utilizza le proprie procedure memorizzate.

Qual è la differenza tra trigger e stored procedure?

Un trigger è una procedura (segmento di codice) che viene eseguita automaticamente quando si verificano determinati eventi in una tabella/vista di un database, mentre una procedura memorizzata è un metodo che può essere utilizzato da un'applicazione che accede a un database relazionale. I trigger vengono eseguiti automaticamente quando si verifica l'evento a cui il trigger dovrebbe rispondere. Ma per eseguire una stored procedure è necessario utilizzare una specifica istruzione CALL o EXECUTE. Il debug dei trigger può essere più difficile e complicato rispetto al debug delle stored procedure. I trigger sono molto utili quando vuoi assicurarti che qualcosa accada quando si verifica un determinato evento.

Consigliato: