在使用BCP将一批文件中的数据导入到到SQL SERVER中的一个表中时,开始速度正常(导入一个文件在2-3分钟),但很快导入速度就明显下降(20分钟以上).检查系统磁盘空间,内存,日志空间等均未发现异常.但发现BCP进程被阻塞.而阻塞BCP进程的进程确实它自己.郁闷哦.这是什么原因? 怎么解决呢?

解决方案 »

  1.   

    先把表的约束去掉再倒入,倒入后加回约束约束包括主键、外键、check等
      

  2.   


    你BCP in 的时候是带LOG的吧
    建议快速BCP它的要求如下:
    1, db_option 'select into',true
    2, 表的所有约束要去掉:(trigger,index,primary key,constraint,foreign key)
      

  3.   

    兄弟们,你们说的好象和我这个没什么关系哦.
    我的数据库是SQL SERVER2000.日志类型已设为简单.
    我的表中数据上亿,导入的文件中数据只有几十万.去掉索引等不切实际.
      

  4.   

    http://www.ajaxstu.com/Sybaseshujuku/239006.html看看对你有帮助吗?
      

  5.   

    个人感觉六楼orochi_gao的方式比较有道理。楼主可以通过一个中间表来导入。除了索引和约束之外的一模一样的中间表,将会提升不少。 
      

  6.   

    晕哦.这样BCP导入是快了.可还不是要把中间表的内容导入到我的业务表中么?
    那就能快了? 这不是拆东墙补西墙么?