java - "SQLITE Full"异常

标签 java sqlite

我正在开发一个 Java 程序,该程序使用 Xerial SQLite 驱动程序在一个巨大的数据库上执行一些查询。

当我发送查询时

SELECT sequence,fieldOne,fieldTwo,pairs FROM events ORDER BY pairs DESC

其中 sequence 是文本、fieldOne、fieldTwo 以及对和整数。它需要一些时间并抛出这个异常:

[SQLITE_FULL] Insertion failed because database is full (database or disk is full)

如果我添加限制约束,一切正常。

发生了什么事?这不是插入查询,磁盘未满。

最佳答案

SQLite由于 ORDER BY,可能正在创建一个临时表/文件。磁盘未满,因为您在删除它创建的临时文件后进行检查。如果您无法获得更多磁盘空间,我建议您要么对结果进行批处理,要么去掉 ORDER BY(如果可以的话)。

关于java - "SQLITE Full"异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16801504/

相关文章:

java - 我无法创建 SQLite 数据库。错误 : java. lang.NullPointerException

django - 如何使用 extra() 可移植跨数据库后端进行 Django 查询?

java - Tomcat 连接器如何工作?

java - JSON 输出不遵循模型中的 JAXB 注释

java - 在 SWT/RCP 中嵌入视频显示

Java MySQL 连接池不工作

ios - 我在将数据从 UITableView 传递到第二个 View 时遇到问题

java - Android 转换月份名称时出错

java - Ebean 无法序列化 Money

sqlite - 在VSTS托管代理上构建具有SQLite扩展名的UWP项目时出现“路径中的非法字符”错误