Android “是什么导致SQLite”;整数溢出“;例外?

Android “是什么导致SQLite”;整数溢出“;例外?,android,android-sqlite,integer-overflow,Android,Android Sqlite,Integer Overflow,我通过ACRA获得了以下堆栈跟踪Galaxy Note II,Android 4.1.2: 我以前从未见过这种异常——有人知道是什么导致了这种情况吗?在创建一个大于整数允许大小的数字时,可能会发生这种情况。一种可能发生这种情况的方法是使用聚合函数,如Sum。如果你对太多的东西求和,你可能会得到一个太大的数字,这个数字会溢出一个整数的大小 更多信息可以在这里找到:我只会在经过广泛的研究后,无法自己提出问题的情况下提问。这是第一次有人真的给我有用的东西。但是谢谢你的关心。好的,谢谢。这是一个总和聚合

我通过ACRA获得了以下堆栈跟踪Galaxy Note II,Android 4.1.2:


我以前从未见过这种异常——有人知道是什么导致了这种情况吗?

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


更多信息可以在这里找到:

我只会在经过广泛的研究后,无法自己提出问题的情况下提问。这是第一次有人真的给我有用的东西。但是谢谢你的关心。好的,谢谢。这是一个总和聚合查询。我对用户输入的数据求和。MAXINT看起来是2^63-1,我允许单个条目为10^12-1。我不知道这个用户是如何溢出的,但他一定有。无论如何,不能人为地限制他们进入。也就是说,有没有办法避免这次事故我想真的没有。嗯,我不知道或者可以通过谷歌找到。我唯一能想到的就是尝试捕捉应用程序代码中的异常,并向用户显示某种最大值或错误消息,因为如果我理解正确的话,他们真的不应该输入那么多数据
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