我的DBF数据库里已有13万条记录了,现在用delphi开发的软件继续往里面追加记录,可是现在很慢,请问有什么好办法解决? 谢谢各位高手!
我的连接代码:
ConnStr:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ProDir+';Extended '
  +'Properties=DBase 5.0;Persist Security Info=False';
  connDbf.ConnectionString:=connstr;
  try
  connDbf.Open;
  except;
  Application.MessageBox('´ò¿ªdbfÊý¾Ý¿â´íÎó','²Ù×÷Ìáʾ',Mb_OK+$40);
  Abort;
  end;
各位高手,能不能帮我想一个好办法,不可以换数据库!

解决方案 »

  1.   

    难道你每次追加都要执行这段代码吗,连接打开一次就行了,sql的insert应该很快
      

  2.   

    非得要用DBF数据库,换SQL不行吗
      

  3.   

    绝对要加1、SELECT总比INSERT来的多,一般不会经常大批量导数吧
    2、开了事务INSERT还是很快的
      

  4.   


    主要是看你怎么个搜索法了select不会很慢的,因为你select出来的结果集很小,select的时候where要把关键字段加上。dbase一般20,30万条数据,select加上insert不会超过2,3秒,当然得看你的实际情况。你说的很慢,具体耗用时间是多少呢?
      

  5.   

    估計是否在查詢數據庫時耗時.
    建議在sql中執行一下計劃...看那個耗時多.
      

  6.   

    1、程序应该初始化时连接到数据库。
    2、建议使用纯SQL语句插入,如:insert into youTable(f1,f2) values (fv1,fv2);
    3、建立几个次码,也就是索引;