【发布时间】:2020-05-19 22:00:13
【问题描述】:
我正在尝试在具有列存储聚集索引的表上创建触发器。每当有人更新时,它就会将记录记录在审计模式表中。
当我执行Create Trigger SQL 时,出现此错误
在表“dbo.report”上创建触发器失败,因为您无法在具有聚集列存储索引的表上创建触发器。考虑以其他方式强制执行触发器的逻辑,或者如果您必须使用触发器,请改用堆或 B 树索引。
任何帮助将不胜感激。
CREATE TRIGGER trg_report
ON dbo.[Report]
after UPDATE, DELETE
AS
BEGIN
INSERT INTO [Audit].[Report]
(userid,
department,
modifydate)
SELECT [UserId] = CURRENT_USER,
D.* FROM deleted D
WHERE CURRENT_USER NOT IN (SELECT accountname
FROM
dbo.[account])
END
【问题讨论】:
-
您需要什么帮助?错误很明显不是吗?
标签: sql sql-server triggers columnstore