捕获两列的更改 - SQL Server
创始人
2024-12-25 04:30:10
0

在SQL Server中,可以通过使用触发器来捕获两列的更改。下面是一个包含代码示例的解决方法:

首先,创建一个表来存储更改的历史记录。该表将记录更改前后的值以及更改发生的时间。例如,可以创建一个名为ChangeHistory的表,包含以下列:

CREATE TABLE ChangeHistory (
    ID INT IDENTITY(1,1) PRIMARY KEY,
    TableName VARCHAR(100),
    ColumnName VARCHAR(100),
    OldValue NVARCHAR(MAX),
    NewValue NVARCHAR(MAX),
    ChangeDate DATETIME
)

接下来,创建一个触发器在更改目标表中的两列发生更改时被触发。例如,如果目标表名为YourTable,两列分别为Column1Column2,则可以创建以下触发器:

CREATE TRIGGER CaptureChanges
ON YourTable
AFTER UPDATE
AS
BEGIN
    IF UPDATE(Column1) OR UPDATE(Column2)
    BEGIN
        INSERT INTO ChangeHistory (TableName, ColumnName, OldValue, NewValue, ChangeDate)
        SELECT 
            'YourTable',
            CASE
                WHEN UPDATE(Column1) THEN 'Column1'
                WHEN UPDATE(Column2) THEN 'Column2'
            END,
            d.Column1,
            i.Column1,
            GETDATE()
        FROM deleted d
        INNER JOIN inserted i ON d.PrimaryKeyColumn = i.PrimaryKeyColumn -- 用于链接原始值和新值的主键列
        WHERE
            (UPDATE(Column1) AND d.Column1 <> i.Column1) OR
            (UPDATE(Column2) AND d.Column2 <> i.Column2)
    END
END

触发器将在YourTable表的Column1Column2被更新时被触发。它将在ChangeHistory表中插入一条记录,记录更改前后的值以及更改发生的时间。

请注意,上述示例中的触发器假设目标表具有一个主键列,用于将原始值和新值进行匹配。如果目标表没有主键列,您可以根据具体情况将触发器进行修改,以使用其他唯一标识列或组合列来链接原始值和新值。

相关内容

热门资讯

专业透视!安装不了wepoke... 专业透视!安装不了wepoker,wepoker辅助分析器,都是是有辅助方法(哔哩哔哩)一、可以开透...
必备透视!安装不了wepoke... 必备透视!安装不了wepoker,wepoker有没有辅助,切实有辅助技巧(哔哩哔哩)1、打开软件启...
辅助透视!aapoker如何设... 辅助透视!aapoker如何设置胜率,aapoker怎么设置提高好牌几率,原来真的是有辅助攻略(哔哩...
有挂透视!wpk辅助器是真的吗... 有挂透视!wpk辅助器是真的吗,wpk可以作比弊吗,本来是有辅助教程(哔哩哔哩)1、打开软件启动之后...
透视透视!德普之星辅助工具如何... 透视透视!德普之星辅助工具如何设置,德普之星私人局辅助器,原来一直都是有辅助技巧(哔哩哔哩)1、每一...
解密透视!德扑之心免费透视,德... 解密透视!德扑之心免费透视,德普之星透视,其实存在有辅助插件(哔哩哔哩)1)有没有挂:进一步探索有辅...
普及透视!wepoker透视脚... 普及透视!wepoker透视脚本安卓,wepoker开脚本视频,竟然一直都是有辅助脚本(哔哩哔哩)运...
解谜透视!德普之星有辅助软件吗... 解谜透视!德普之星有辅助软件吗,德普之星辅助软件,果然真的是有辅助工具(哔哩哔哩)1、免费脚本咨询教...
曝光透视!hhpoker透视工... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加去威信【485275054】很多玩家在这款游戏中打...
教你透视!wepoker插件下... 教你透视!wepoker插件下载,wepoker辅助透视,切实真的是有辅助脚本(哔哩哔哩)1、下载好...