有谁sqlite做日志文件?写入速度怎样?
最近用delphi7+unidac3.6+sqlite3 做了个写入文字操作,发觉写入速度很慢。
表结构是这样的create test (id int ,log varchar(4000)) 

解决方案 »

  1.   

    sqlite读写速度飞快(第一次读取时稍慢).
    避免重复打开/关闭连接.
    批量提交时加事务.
      

  2.   

    我的代码是这样写的:
    procedure TForm1.btn5Click(Sender: TObject);
    var
      i : Integer;
    begin
      unqry2.Close;
      for i := 0  to 1000 do
      begin
        mmo1.Lines.Add(IntToStr(i));
     
        unqry2.SQL.Text := 'insert into  table1 (col1) values (' + QuotedStr( '日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志日志 ' + IntToStr(i)) + ')';
        unqry2.Execute;
        Application.ProcessMessages;
      end;end;
      

  3.   

    你用的什么控件?
    找找 FDB.BeginTransaction  (FDB为connection名称)
    或query的beginupdate之类的
      

  4.   

    我改了写法用拼接sql语句的方法,每100条insert一次,速度加快很多
      

  5.   

    使用事务就是为了提高sql写入效率, 你通过拼接sql的方法也是变相使用事务.