SQLite停留在SQLite.trampoline()方法上

时间:2011-11-03 22:59:33

标签: java android database sqlite

我在java中编写了一个使用SQLite(v056)的程序。

我多次查询数据库,使用一个Statement(称之为executeQuery()方法)并且它工作正常。

一段时间后,它停留在trampoline()方法上。

此时执行的查询是:

select * from defs where word like 'AA' and size=2;

我真的不知道什么是错的,以及为什么会被卡住。

你们有些人有同样的问题吗?你知道怎么解决吗?

提前致谢!

1 个答案:

答案 0 :(得分:1)

我不确定Android平台上的情况如何,但Zentus SQLiteJDBC driver基于SQLite 3.6.14.2已经超过两年了,更不用说SQLite 3.6.x已被SQLite取代3.7现在已经有一段时间了。

也许您可以尝试更新的Xerial SQLiteJDBC driver,尽管它还没有更新到最新的SQLite版本。

编辑:

  1. 显然,trampoline()方法是SQLite库的NestedVM版本的一部分,当SQLiteJDBC没有适用于您平台的本机SQLite库时,它将被SQLiteJDBC使用。 NestedVM实现似乎突破了JVM的极限,调试起来非常困难 - 你最好确保本机库可用。

  2. 如果你是Android编程,那么根本不应该使用SQLiteJDBC。 Android有自己的API用于SQLite数据库处理。可以在here找到在Android中使用SQLite的教程。