在插入系统插入数据行之后的创建触发器。 我尝试在其他系统插入到表之后创建触发器,但是系统插入数据,这使我的触发器运行多个时间且性能低,如何修复它: 使用草稿 去 创建或改变

问题描述 投票:0回答:1

您的第二个触发器一直在创建和重新创建表,这使得越来越慢了。

它应该只是复制新插入的行,类似:
CREATE OR ALTER TRIGGER trg_after_insert_test_target_2025_nguyennn
            ON test_target_2025_nguyennn
            AFTER INSERT
            AS
            BEGIN
                SET NOCOUNT ON;

                    -- Create table once
                    IF OBJECT_ID('draft..test_nguyennn', 'U') IS NULL
                    BEGIN
                         SELECT *
                         INTO draft..test_nguyennn
                         FROM test_target_2025_nguyennn where 1 = 0;
                    END

                    insert into draft..test_nguyennn
                    select * FROM inserted; -- only copy the new rows
                

            END
sql sql-server triggers
1个回答
0
投票
当然,您要做的整个概念非常糟糕,但假设您无法做任何其他方法

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.