sql server 2008中 回滚的最大记录数是多少?假如DB某个表中有二百万条数据(没个记录大约六七个字段),我用delete将其删除之后,再执行rollback会怎么样呢?
会回滚的了么?会导致性能很低么?

解决方案 »

  1.   

    你执行del前先启用事务,这样才会回滚。
      

  2.   

    #1. begin tran 后可以rollback.
    #2. 这么多的数据,delete时会很慢的(因为要保存一些信息),会导致其它访问此表的进程等待,可能会超时。
    #3. 可考虑把一个大事务分割成几批小事务,来提高性能。
      

  3.   

    单独一条delete语句是隐式事务,你再执行rollback的时候,delete已经提交。方法同1楼。
      

  4.   

    DELETE 操作放到一个事物里 才能进行回滚操作。
    单独执行了 DELETE 操作 是 不可能回滚的。