如果没法避免一条一条的写入,那么在处理前显示开启一个事务 begin tran 在处理完成后 commit 这样也要比不开显示事务会快很多!
while i < 10000
begin insert into test_0607select @i,'0607无显示整体事务'set i = i + 1enddrop table test_0607
create table test_0607 (a int,b nvarchar(100))---加上事务begin trandeclare i int set i = 1while i < 10000begin insert into test_0607select @i,'0607 显示整体事务'set i = i + 1end----结束事务,提交commit
结果 : 8秒和0.8秒的区别,不用多说啥了吧! 凡事有利有弊,这种显示开启大事务要保证的整体的过程不会执行特别长的时间,如果执行的操作特别多而且时间长就是灾难了!