温馨提示×

sqlserver触发器如何获取刚更改的数据

小亿
383
2024-05-30 16:33:13
栏目: 云计算
亿速云云数据库,读写分离,安全稳定,弹性扩容,低至0.3元/天!! 点击查看>>

SQL Server触发器可以使用Inserted和Deleted临时表来获取刚更改的数据。

  1. Inserted表:包含了所有新插入的数据,对于INSERT操作有效。
  2. Deleted表:包含了所有被删除或更新前的数据,对于DELETE和UPDATE操作有效。

以下是一个示例触发器,可以获取刚被更新的数据:

CREATE TRIGGER trgAfterUpdate ON your_table
AFTER UPDATE
AS
BEGIN
    DECLARE @UpdatedData nvarchar(max);

    SET @UpdatedData = '';

    SELECT @UpdatedData = @UpdatedData + col1 + ' ' + col2 + CHAR(13) + CHAR(10)
    FROM Inserted;

    -- 在这里可以对获取到的数据进行相关操作
    -- 例如将获取的数据插入到另一个表中

END

在上面的示例中,trgAfterUpdate触发器在更新操作后获取新的数据,并将其存储在@UpdatedData变量中。您可以根据需要对获取到的数据进行相关操作,例如将其插入到另一个表中。

亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>

推荐阅读:我们如何使用 INFORMATION_SCHEMA 来获取特定数据库中触发器的详细信息

0