Ihr Problem ist:Dieser Trigger wird AFTER ausgelöst die Löschung ist bereits erfolgt . Es gibt also keine Zeile mehr in HashTags
dem Sie beitreten könnten!
Sie müssen stattdessen diesen Trigger verwenden:
ALTER TRIGGER [dbo].[HashTags_BeforeDelete]
ON [dbo].[HashTags]
FOR DELETE
AS
BEGIN
INSERT INTO HashTagsArchive(Id, HashTagId, delete_date)
SELECT
d.Id, d.HashTagId, GETUTCDATE()
FROM deleted d
END
GO
Der Deleted
Pseudo-Tabelle enthält die ganze Zeile(n) die gelöscht wurden - keine Notwendigkeit, irgendetwas beizutreten ...
Außerdem:Dieser Trigger wird ausgelöst, nachdem das Löschen stattgefunden hat - Sie müssen also innerhalb des Triggers nichts selbst tun - fügen Sie einfach diese Informationsbits in Ihre Archivtabelle ein - das ist alles. Alles andere erledigt SQL Server für Sie.