我有一个触发器,表上的每个新插入都会在另一个名为AUDLOG的表中插入一些信息。 SQL非常简单:
INSERT AUDLOG( ID,f1,f2,f3,f4,f5,f6,f7 )
(
SELECT
ID,
0,
0,
0,
GETDATE(),
0,
CAST( SYSTEM_USER AS VARCHAR(50) ),
'INSERTED',
FROM INSERTED
)
问题是有时我必须立即进行大量插入(大约350k新行),这会变得很慢并锁定我的整个数据库。
我试着用光标或者10k的批量做这个触发器。
对此最好的策略是什么?重点不应该是冻结数据库和性能,如果可能的话,两者同时冻结。