2

我正在尝试使我的 Android 代码中的 SQLite 数据库交互更加健壮。

在我的表中有一列标记为UNIQUE. 现在我想处理我的应用程序尝试输入非唯一条目的情况。为了实现这一点,我使用了方法SQLiteDatabase.insertOrThrow()。该方法抛出一个android.database.sqlite.SQLiteException. 不幸的是,该异常不允许我获取错误代码(就像java.sql.SQLException善意的那样)。所以在我的catch-block中我无法处理异常错误代码敏感,对吗?

SQLiteExceptions在 Android上处理的最佳做法是什么?我的应用程序真的可以只说有问题但不找出问题所在吗?

感谢您的帮助和时间。担

4

1 回答 1

2

在这种特殊情况下,您可以做的是验证您要插入的记录是否确实是唯一的。这样您就可以避免插入非唯一值,并且此问题不再是问题。

话虽如此,许多特定的异常都继承自SQLiteException,例如SQLiteConstraintException. 您还可以捕获特定的并做您必须做的事情。

于 2013-11-07T08:53:35.943 回答