为什么这个就没有用commit提交呢

解决方案 »

  1.   

    目的就是为了看事务啊。
    如果调用了COMMIT事务就结束了,OPENTRAN() 看什么?
    这又不是完善的代码,只是一个小段落而已。
      

  2.   

    可以不写commit,但建议养成写的习惯
      

  3.   

    如果commit/rollback了,效果就看不到了,因为这个时候已经不属于“OPEN”的事务,DBCC OPENTRAN也就没有了数据
      

  4.   

    这是面试题,要的就是这个效果,如果你 commit 了,就看不到事务了。
      

  5.   


    还有这个属于显式事务吗,如果不是为什么要用begin?
      

  6.   


    还有这个属于显式事务吗,如果不是为什么要用begin?是显式事务。但是delete本身就是一个事务,不管你是否使用begin tran
      

  7.   

    那为什么未提交执行结果却有1行受到影响?
    未提交也是提示当前语句所影响的行数,如果其他的会话使用 with (nolock) 查询时,会查询到该操作,也就是被人称为“脏数据”的内容。