你的SQL语句出错了。
进程2
BEGIN TRAN
INSERT INTO TEST (COLUMN3, COLUMN4) values ('E','F')
COMMIT 

解决方案 »

  1.   

    BEGIN TRAN
    declare @ident int
    INSERT INTO TEST  ('A','B')
    select @ident=@@identity
    BEGIN TRAN
    INSERT INTO TEST  ('E','F')
    COMMIT 
    UPDATE TEST SET COLUMN1 = 'C' WHERE ID = @ident
    COMMIT 是不是这个意思
      

  2.   

    是的!
    但是,在TEST 上有一个TRIGGER,TRIGGER中INSERT INTO 另一个表TEST2,TEST2 中也有ID,此时的@@identity是TEST2所产生的ID,而不是TEST中的ID。
    怎么办?
      

  3.   

    问‘聪明的毛驴‘  不是说insert和update之后会自动commit的么,为什么还要加commit呢
      

  4.   

    对,看情况了比如:
    ------------------------------------------------
    insert into mytable(col1,col2) values('1','name')
    --------------------------------------------------
    begin tran
    insert into mytable(col1,col2) values('1','name')
    commit
    当你没有使用事务处理的时候用begin tran和commit tran,当你不用事务处理的时候就是自动commit