Condividi tramite


Trigger (Visual Database Tools)

Aggiornamento: novembre 2007

In Visual Database Tools sono supportati i trigger DML, i quali vengono richiamati quando nel database si verifica un evento DML (Linguaggio di manipolazione dei dati, Data Manipulation Language). Tra gli eventi DML sono incluse le istruzioni INSERT, UPDATE o DELETE che modificano i dati in una tabella o vista specificata. I trigger DML possono eseguire una query su altre tabelle e possono includere istruzioni Transact-SQL complesse. Il trigger e l'istruzione che lo attiva vengono considerati come un'unica transazione, di cui è possibile eseguire il rollback dall'interno del trigger stesso. Se viene rilevato un errore grave, ad esempio spazio su disco insufficiente, verrà eseguito automaticamente il rollback dell'intera transazione.

Elementi correlati

I trigger DML offrono i seguenti vantaggi:

  • Consentono di propagare le modifiche in tabelle correlate nel database. Tali modifiche tuttavia possono essere eseguite in modo più efficiente utilizzando vincoli di integrità referenziale a catena.

  • Consentono di proteggere il sistema da operazioni INSERT, UPDATE e DELETE dannose o non valide e di applicare altre restrizioni più complesse rispetto a quelle definite con i vincoli CHECK.

  • A differenza dei vincoli CHECK, i trigger DML possono fare riferimento a colonne in altre tabelle. Con un trigger è ad esempio possibile utilizzare un'istruzione SELECT di un'altra tabella per effettuare il confronto con i dati inseriti o aggiornati ed eseguire operazioni aggiuntive, ad esempio modificare i dati o visualizzare un messaggio di errore definito dall'utente.

  • Consentono di valutare lo stato di una tabella prima e dopo una modifica dei dati e di intraprendere azioni in base alla differenza rilevata.

  • Più trigger DML dello stesso tipo (INSERT, UPDATE o DELETE) in una tabella consentono l'esecuzione di più operazioni differenti in risposta alla stessa istruzione di modifica.

Vedere anche

Altre risorse

Utilizzo di trigger

Utilizzo delle tabelle in Progettazione tabelle

Operazioni con i vincoli