解决方案 »

  1.   

    不列理由到还是个正常提问,列了理由——楼主你是来搞笑的吧?
    无论是分段 Commit 还是一次性 Commit,其他条件不变的前提下,该如何进行磁盘 IO 由 SQL Server 自己调度,不是一个简单的 Commit 语句能干涉的了的。
    唯一影响的只是你的事务会不会超时而已。不要把数据库想得象结构文件那么简单,这都是上个世纪八十年代的“先进”概念了。
      

  2.   


    怎样才能实现功能:
    insert不足1000条时,数据都存在内存中,当到了1000条时就一次性把这些数据保存磁盘。
      

  3.   

    在SQL Server中,尽量控制每个事务的insert量,5000以下提交一次会比较好。但是你的确管的太多了。SQL Server更清楚自己的自身
      

  4.   

    先insert到表变量或临时表中,
    当临时表记录数达到1000条时,
    插入目标表,
    然后清空表变量或临时表,
    如此循环..
      

  5.   

    先insert到表变量或临时表中,
    当临时表记录数达到1000条时,
    插入目标表,
    然后清空表变量或临时表,
    如此循环..能不能保存在内存中啊
      

  6.   


    这样不是能突破io瓶颈,加快数据的存储速度吗?系统要求每秒能保存1000条以上的记录,但是现在每秒才几百条,还有其他什么方法吗?请指教,谢谢
    如果你每记录的数据大小有100K,差一点的机械硬盘的写入速度大概就是 50M,再“优化”IO也没用,必须考虑升级硬件了。
    如果数据大小远没到这个数量级,速度瓶颈再其他地方,考虑硬盘IO更加没用。