我可以在 ON DELETE CASCADE(user, orders) 之前使用一个过程来存储历史日志吗?
我想当我们/他们删除他们的帐户时,我想删除与用户关联的订单。我不相信这是最好的程序(因为订单表应该是它自己的实体),但是我想知道是否可以介入并将每个订单(历史)记录到 txt 文件或另一个表中。
问候
我可以在 ON DELETE CASCADE(user, orders) 之前使用一个过程来存储历史日志吗?
我想当我们/他们删除他们的帐户时,我想删除与用户关联的订单。我不相信这是最好的程序(因为订单表应该是它自己的实体),但是我想知道是否可以介入并将每个订单(历史)记录到 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