Estou iniciando no SQL Sever e por isto meu conhecimento não é tão bom.
Preciso fazer uma aplicação que monitore mudanças em uma tabela e que envie emails para uma ou mais pessoas reportando isto.
Já tenho um trigger assim:
ALTER TRIGGER tr_comlucasvasconcelos_printed ON nfs FOR UPDATE AS IF UPDATE(printed) BEGIN DECLARE @id_printed INT SELECT @id_printed=id FROM INSERTED PRINT @id_printed END GO
Ela monitora a coluna "printed" na tabela "nfs". A minha solução para enviar emails é:
Armazenar a mensagem, já formatada, e os endereços de destino em uma tabela "spool" que será "assistida" por um programa windows. Este programa de tempos em tempos vai verificar as mensagens agendadas e envia-las.
O meu problema é que ficaria mto complexo usar outras tabelas para definir a mensagem padrão e as regras adicionais (estou fazendo para uma tabela. mas, o sistema deverá monitorar várias outras com mensagens diferentes e destinatários diferentes). Então pretendo adicionar a configuração da mensagem dentro da própria trigger.
Seria algo como:
ALTER TRIGGER tr_comlucasvasconcelos_printed ON nfs FOR UPDATE AS IF UPDATE(printed) BEGIN DECLARE @message TEXT SELECT @message = ' Caro cliente, molestie viverra arcu. Phasellus purus. Donec sit amet nibh vel orci tristique luctus. Etiam sed lacus. Donec eu est. Class aptent taciti sociosqu ad litora torquent per conubia ' (...)
Mas quando tento exetuar este comando recebo a mensagem de erro: "The text, ntext, and image data types are invalid for local variables."
Alguém tem ideia de como posso fazer isto??
