Ich erstelle Trigger für mehrere Tabellen. Die Trigger haben dieselbe Logik. Ich möchte eine gemeinsame gespeicherte Prozedur verwenden. Aber ich weiß nicht, wie die Arbeit mit eingefügt und gelöscht Tabelle.Wie verwenden Sie eingefügte gelöschte Tabelle in der gespeicherten Prozedur?
Beispiel:
SET @FiledId = (SELECT FiledId FROM inserted)
begin tran
update table with (serializable) set DateVersion = GETDATE()
where FiledId = @FiledId
if @@rowcount = 0
begin
insert table (FiledId) values (@FiledId)
end
commit tran
Sie können nicht. Die Pseudotabellen sind nur direkt in Triggern verfügbar. Und dein Code ist kaputt. 'inserted' kann 0, 1 oder mehrere Zeilen enthalten -' SET @FiledId = (SELECT FiledId FROM eingefügt) 'wählt einen Wert aus * one * dieser Zeilen und ignoriert die anderen –