0

我通过ACRA得到了以下堆栈跟踪。 Galaxy Note II,安卓 4.1.2:

android.database.sqlite.SQLiteException: integer overflow (code 1)
at android.database.sqlite.SQLiteConnection.nativeExecuteForCursorWindow(Native Method)
at android.database.sqlite.SQLiteConnection.executeForCursorWindow(SQLiteConnection.java:968)
at android.database.sqlite.SQLiteSession.executeForCursorWindow(SQLiteSession.java:836)
at android.database.sqlite.SQLiteQuery.fillWindow(SQLiteQuery.java:62)
at android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:143)
at android.database.sqlite.SQLiteCursor.getCount(SQLiteCursor.java:133)
at android.database.AbstractCursor.moveToPosition(AbstractCursor.java:196)
at android.database.AbstractCursor.moveToNext(AbstractCursor.java:244)
:
My app's methods

我以前从未见过这个异常——有人知道是什么原因造成的吗?

4

1 回答 1

1

它可能发生在您创建的数字大于整数允许的大小的情况下。发生这种情况的一种方法是,如果您使用的是 Sum 等聚合函数。如果你对太多东西求和,你最终可能会得到一个太大的数字,超出整数的大小。

更多信息可以在这里找到:http ://www.sqlite.org/lang_aggfunc.html

于 2013-01-22T06:29:26.670 回答