代码是这样的:
while i<10000 do
  begin
    SqlStr:='insert into Tab(C_One,C_Two) values('''+FlagStr+''','''+ListStr+''''+')';
    ADOQuery3.Close;
    ADOQuery3.SQL.Clear;
    ADOQuery3.SQL.Add(SqlStr);
    ADOQuery3.ExecSQL;
    i:=i+1; 
  end;
数据库为Sql Server2000,只要一运行这段代码,sql server就直线上升的占用内存资源直到耗尽为止,有没有什么好的办法可以使它占用资源少些?

解决方案 »

  1.   

    晕4, loop这么多次就是插入相同的记录到数据库中.
    还不如写一个存储过程.你的思路有问题的
      

  2.   

    FlagStr,ListStr这两字符串的值是不相同的,只是上面的代码没有给出来。
      

  3.   

    一次生成1000条SQL语句,然后执行一次ExecSQL.
      

  4.   

    博客网络导航:http://www.haoup.com/default.htm
      

  5.   

    没有用过sql server好像可以生成一个文件再用sql server支持的一个命令一次导入的