我现在做一件事情就是把一个dbf的文件里的数据存放到sql server里头,dbf用了一个dbf操作类,经过测试读取记录的速度还可以。每读取一条记录以后把记录的各项值存放到一个表示sql server表结构的struct中如record,然后作了一下处理,然后再把这个record传入到插入函数里,这里拼接一个insert语句,然后再用_connectionPtr的Execute方法,
p_connect_db->Execute(sql,NULL,adOptionUnspecified);
参数为adOptionUnspecified来执行,dbf中大概有1000条数据,问题是在做连续插入操作的时候sql server占用cpu将近20-30%左右,程序有个界面,界面响应都接收不了了,这是怎么回事情呢,又没有什么性能瓶颈,表大概有30个字段,
大家又没有什么想法

解决方案 »

  1.   

    我建立了一个测试数据库,一个字段,界面上一个按钮,按下去,用connection执行1万次insert操作,界面cpu40,sql server在30左右,怎么回事啊
      

  2.   

    效率,如果你把操作放到线程里边的话,CPU站用可能会小些!还能进行相关控制
      

  3.   

    数据库操作不要放在UI线程里,独立到子线程中
    CPU占用不会有明显变化,但是至少不会让你感觉程序像死了一样