Ich habe eine Tabelle hl7_lock in SQL Server mit diesen Spalten genannt:SQL Server 2005 löschen Auslöser wählen aus gelöscht gibt null zurück
hl7_id lock_dtm lock_user
Ich habe 3-Trigger auf der Tabelle für UPDATE, INSERT und DELETE
Die Tabelle wird nie aktualisiert, aber INSERT-Trigger funktioniert einwandfrei. diese jedoch löschen Auslöser gelegentlich legt einen Datensatz in hl7_lock_log mit einem Null-hl7_id
SET NOCOUNT ON;
declare @hl7_id decimal(18,0)
select @hl7_id = hl7_id from deleted
insert into hl7_lock_log (user_name, action, hl7_id, dtm)
values(system_user, 'Delete', @hl7_id,getdate())
Die anderen Felder erfolgreich eingesetzt werden, aber hl7_id ist null. Die gelöschten Datensätze haben keine Null hl7_id.
Wir haben SQL Server SP 2 über das Wochenende installiert, aber das hat die Situation nicht verbessert. Hat jemand dieses Verhalten in einem SQL Server-Trigger gesehen? Irgendwelche Tipps, wie ich meinen Auslöser reparieren kann?