关于SQL Server Change Data Capture,您是否可以跟踪对行/列数据进行更改的用户,或者是否可以扩展 CDC 以允许这样做?我在文档中看不到任何内容。
问问题
2489 次
2 回答
3
您无法使用 CDC 捕获用户名..
您必须使用审核来执行此操作,或者如果这是一次性请求,您可以查询 TLOG..
以下是请求相同的连接项目..
您还可以按照 Aaron Bertrand的这篇文章在 Katmai 中使用 CDC使用触发器。
创建表:
CREATE TABLE cdc.dbo_test_CT_MoreInfo
(
startlsn BINARY(10),
seqval BINARY(10),
operation INT,
username SYSNAME NOT NULL DEFAULT SUSER_SNAME(),
eventDate DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (startlsn, seqval, operation)
);
GO
创建触发器:
CREATE TRIGGER cdc.LogMoreCDCInfo
ON cdc.dbo_test_CT
FOR INSERT
AS
BEGIN
IF @@ROWCOUNT > 0
BEGIN
INSERT cdc.dbo_test_CT_MoreInfo(startlsn,seqval,operation)
SELECT __$start_lsn, __$seqval, __$operation FROM inserted;
END
END
GO
于 2016-12-29T14:54:22.820 回答