我是在delphi下用的ASQLite控件的,发现及其不稳定,但是网络上又没看到有这样相同的描述,我用的是ASQLite3_2006_01_B这个包。
不稳定主要出现
1.TASQLite3Query.recordcount
2.TASQLite3Query.fieldbyname('aaa').asinteger
3.while not TASQLite3Query.eof do
begin
...
TASQLite3Query.next;
end;1,2会报错,报内存地址错误
3会出现死循环,就是TASQLite3Query.eof恒为false;快要搞崩溃了,请教各位大侠
或者有什么好的控件可以代替的,麻烦指点一下,谢谢

解决方案 »

  1.   

    TASQLite3Query是类名,还是实例名?
      

  2.   

    可以试试最新的版本,好像说2008年6月份的。如果还是报错,只好进去调试了。P.S. 在所有支持Delphi的免费SQLITE控件当中,ADUSQLITE算是很完善了。还有一个商业组件DISQLITE可以研究一下。
      

  3.   

    Asqlite是有些BUG
    可以考虑用ZeosLib
    很好用,就是生成的EXE比较大一点。
      

  4.   

    我用的sqlite+zeoslib控件 来读取utf8 编码的数据库,原因是ansi对模糊查询 like 支持的不好。带来的问题就是直接使用GRID显示和编辑数据总是乱码。 code=Delphi(Pascal)] zqry1.SQL.Text:=Utf8encode('select * from area  where area like ''%人''');[[/code] 只有grid里出错,其他都可以用utf8encode utf8decode 显式转换。因为其他控件里单字段单记录的,而grid控件确实多行多记录的,如果能在grid控件里对显示和保存每一字段值都作下类似的转换,我想应该可以实现吧。 sqlite expert professional 和橙子的工具  都同时支持utf8 和ansi。 
    既然 sqlite expert professional 能显示出来 UTF8 的数据表。不知道它里面用的是不是dbgrid 反正是个表格形式的。我想dbgrid通过类似于 utf8encode utf8decode 的方式也可以实现吧。 所以肯定有办法解决“使用UTF8就不能直接使用GRID编辑数据” 的问题。 
    期待各位高手的出现。