Сделала дополнительную таблицу, пишет, удалаяет, правда я через Ado делала, мне так привычней. А вот триггер не работает. Под этим пользователем пишет в таблицу TemporaryTableSQL, хотя не должен. Может что не так делаю.
SQLсоздание1 ="CREATE TRIGGER " + ИмяТриггера1 + " ON " + Таблица + " FOR DELETE, INSERT, UPDATE | AS |DECLARE @Username as varchar(50) |SELECT @Username = Username FROM [Journal].[dbo].[T_1Susers] where spid = @@SPID | set nocount on | BEGIN | | insert into [Journal].[dbo].[TemporaryTableSQL] (Number,Data,GUID,Entity,Operation,Status) | select newid(),getdate(),inserted."+ПолеСГуидом+",'"+Сущность+"','Add','New' | from inserted | inner join deleted | on inserted."+ПолеСГуидом+" = deleted."+ПолеСГуидом+" | where (inserted.ismark = 0) and (deleted.ismark = 1); | | insert into [Journal].[dbo].[TemporaryTableSQL] (Number,Data,GUID,Entity,Operation,Status) | select newid(),getdate(),inserted."+ПолеСГуидом+",'"+Сущность+"','Delete','New' | from inserted | inner join deleted | on inserted."+ПолеСГуидом+" = deleted."+ПолеСГуидом+" | where (inserted.ismark = 1) and (deleted.ismark = 0); | | insert into [Journal].[dbo].[TemporaryTableSQL] (Number,Data,GUID,Entity,Operation,Status) | select newid(),getdate(),inserted."+ПолеСГуидом+",'"+Сущность+"','Change','New' | from inserted | inner join deleted | on inserted."+ПолеСГуидом+" = deleted."+ПолеСГуидом+" | where (inserted.ismark = 0) and (deleted.ismark = 0); |IF @Username = 'Test' rollback tran | | End " ;
|