在我们的数据库级应用程序中,我在模式 Billing 和 Billing_History 中有一个名为 Installments 的表。
显示的触发器位于计费模式中的分期付款表上。
这样做是每次在计费模式中插入/更新记录时,它也会写入历史文件。
如果从计费表中删除记录,则将其写入历史表,并带有“已删除”指示符 = true。
我认为随着更多记录的添加,“如果不存在(从插入中选择 *)正在扼杀我的表现。
有没有更有效的方法是写这个触发器?
Create TRIGGER [Billing].[Installments_InsertDeleteUpdate_History]
ON [Billing].[Installments]
AFTER INSERT, DELETE, UPDATE
AS BEGIN
Insert Into Billing_History.Installments
Select *, GetDate(), 0 From Inserted
If Not Exists (Select * From Inserted)
Insert Into Billing_History.Installments
Select *, GetDate(), 1 From Deleted
SET NOCOUNT ON;
-- Insert statements for trigger here
结尾