我可以在删除级联之前使用一个过程来存储历史日志吗



在ON DELETE CASCADE(用户、订单)之前,我可以使用一个过程来存储历史日志吗?

我想当我们/他们删除他们的帐户时,我想删除与用户关联的订单。我不相信这是最好的过程(因为订单表应该是它自己的实体),但我想知道是否可以介入并将每个订单(历史记录)记录到一个txt文件或另一个表中。

问候

不确定文件,但可以使用触发器将历史数据存储在另一个表中。这是代码。


CREATE TRIGGER LOGORDERS
ON USERS
INSTEAD OF DELETE 
AS
    DECLARE @UID INT
    SELECT @UID = UserID FROM DELETED
   INSERT INTO OrderLog(OrderItemName, UserID) SELECT OrderItemName, UserID FROM ORDERS  WHERE UserID = @UID
   DELETE FROM ORDERS WHERE UserID = @UID
   DELETE FROM USERS WHERE UserID = @UID
GO

相关内容

最新更新