2009-06-26 74 views
5

我,虽然我没有使用任何明确的自动提交true或false面临一个SQLite错误正在进行中的SQL语句。 任何人都可以提供有关此错误的任何输入。你会得到这个错误的情况是什么?SQLite的错误:无法提交事务 - 使用Java代码

在此先感谢。 Regards, Manasi保存

+0

能否请您发布的代码片段? – 2009-06-26 14:10:13

回答

5

当我在一个循环内循环表项时,我反复面对类似的问题(在我的情况下,这是一个回滚是不可能的)。只要游标正在处理这些条目,一条SQL语句就会“正在进行”。我不完全知道,如果这也禁止提交,但它可能是。

当您尝试进程表项,并插入在相同或不同的表项,你可能想尝试收集数据在内存中,在循环后做插入或更新。

附加信息:“自动提交”通常在SQLite中默认为“True”(当然也可能取决于您使用的访问层 - 我使用Python和apsw,所以我不能告诉你更多关于这个在Java中)。这意味着,每个插件都立即自动完成。

==>这可能是一个其他的解决方案。而不是存储在内存中的数据,你可以尝试显式打开一个事务,并在循环后其提交 - 这样一来,问题应该走也行。