处理Android的SQLiteException

时间:2013-11-07 08:45:04

标签: java android sql sqlite exception-handling

我正在努力让我的Android代码中的SQLite数据库交互更加健壮。

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

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

感谢您的帮助和时间。 丹

1 个答案:

答案 0 :(得分:1)

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

话虽如此,许多特定的例外都是从SQLiteException继承的,例如SQLiteConstraintException。你也可以抓住具体的,做你必须做的事。