posts - 315, comments - 268, trackbacks - 15

My Links

News

View Pietro Libro's profile on LinkedIn

DomusDotNet
   DomusDotNet

Pietro Libro

Tag Cloud

Article Categories

Archives

Post Categories

Blogs amici

Links

Trigger SQL

Creazione di un trigger su tabella SQL Server. Post a titolo di promemoria. :-)

Codice per la creazione della tabella di esempio

CREATE TABLE [dbo].[Utenti](
[Utente_ID] [int] IDENTITY(1,1) NOT NULL,
[Utente_Cognome] [varchar](20) NOT NULL,
[Utente_Nome] [varchar](20) NOT NULL,
[Utente_Piano] [int] NULL,
[Utente_Telefono] [varchar](15) NULL,
[Utente_Email] [varchar](50) NULL,
CONSTRAINT [PK_Utenti] PRIMARY KEY CLUSTERED
(
[Utente_ID] ASC ) ON [PRIMARY] ) ON [PRIMARY]

Codice per la creazione del trigger

-- Crea un trigger per l'inserimento e l'aggiornamento. -- Viene recuperato il valore del campo [Utente_Cognome] inserito o aggiornato CREATE TRIGGER [Aggiorna]
ON [Utenti] AFTER INSERT,UPDATE
AS
BEGIN
DECLARE @Cognome varchar(20 )
SET @Cognome =(SELECT inserted.[Utente_Cognome] FROM inserted)
EXECUTE TestTrigger @Cognome
END

Codice per la Stored Procedure di Test

 

-- Modifica il valore del campo [Utente_Cognome] in 'Nuovo Cognome' CREATE PROCEDURE [TestTrigger]
@Utente_Cognome varchar(50)
AS
UPDATE Utenti SET Utente_Nome = 'Nuovo Cognome' WHERE Utente_Cognome =@Utente_Cognome

La combinazione trigger/stored procedure  in questo caso è veramente insignificante, ma in realtà si potrebbero eseguire calcoli,recupero di dati, operazioni di verifica etc...
 

Technorati Tag:

Print | posted on domenica 25 novembre 2007 22:34 | Filed Under [ SQL ]

Feedback

Gravatar

# re: Trigger SQL

I trigger sono il nemico della scalabilità, della manutenibilità, e della gestibilità di un DB...
A volte possono servire... ma se si riesce a farne a meno si vive più serenamente...
25/11/2007 22:38 | Lorenzo Barbieri
Gravatar

# re: Trigger SQL

Senza ombra di dubbio sono d'accordo con la tua opinione. In una situazione recente, ho considerato l'uso dei trigger perchè volevo essere sicuro della consistenza dei dati anche nel caso di modifica dei dati direttamente su db.Ovviamente le utenze per l'accesso al DB sono state gestite, ma...
26/11/2007 00:35 | Pietro Libro
Comments have been closed on this topic.

Powered by:
Powered By Subtext Powered By ASP.NET