Sql server SQL Server:触发更新刚插入的行

Sql server SQL Server:触发更新刚插入的行,sql-server,triggers,Sql Server,Triggers,我目前正在使用一个旧的应用程序,我没有任何源代码,但我真的需要添加一些新的逻辑应用程序 我发现唯一的方法就是搞乱数据库数据,用触发器改变我需要的任何东西 我编写了以下触发器,该触发器应更新刚插入行的两列: CREATE TRIGGER addLoteInfo ON fi FOR INSERT AS DECLARE @loteN varchar(15), @refN varchar(18), @CientifN

我目前正在使用一个旧的应用程序,我没有任何源代码,但我真的需要添加一些新的逻辑应用程序

我发现唯一的方法就是搞乱数据库数据,用触发器改变我需要的任何东西

我编写了以下触发器,该触发器应更新刚插入行的两列:

CREATE TRIGGER addLoteInfo ON fi
FOR INSERT
AS 
DECLARE
    @loteN          varchar(15),
    @refN           varchar(18),
    @CientifN               varchar(40),
    @CaptureZ       varchar(20)


    declare MY_CURSOR cursor for 
    select   
        i.lote, i.ref
    from inserted i

    open MY_CURSOR

    fetch next from MY_CURSORinto @loteN, @refN

    while @@fetch_status = 0  
    begin 

         SELECT @CientifN = u_ncientif FROM SE where lote LIKE @loteN and ref LIKE @refN;

         SELECT @CaptureZ = u_zcaptura FROM SE where lote LIKE @loteN and ref LIKE @refN;

        UPDATE FI SET LNCIENT=@CientifN, LZCAP=@CaptureZ;

        fetch next from CURSOR_TESTE into @loteN, @refN 

    end 

    close MY_CURSOR
    deallocate MY_CURSOR
问题是,当插入一个新注册表时,它似乎陷入了死锁

做我想做的事是不可能的


你能帮我换一种方法吗

如果要动态修改新插入/更新的记录,需要使用
而不是
触发器。

为什么要更新刚插入的行而不是简单地插入正确的数据?插入是由应用程序完成的,我无权访问他的源代码来更改它,以包括2个常规字段。Eww。触发器+游标+无应用程序源代码=痛苦的秘诀。祝你好运