我正在努力让我的Android代码中的SQLite数据库交互更加健壮。
我的表中有一列标记为UNIQUE
。现在我想处理我的应用程序尝试输入非唯一条目的情况。为此,我使用方法SQLiteDatabase.insertOrThrow()
。该方法抛出android.database.sqlite.SQLiteException
。不幸的是,该异常不允许我获取错误代码(如java.sql.SQLException
那样)。
所以在我的catch-block中我无法处理异常错误代码敏感,我是否正确?
在Android上处理SQLiteExceptions
的最佳做法是什么?我的应用程序真的可以说有问题但是没有找出问题所在吗?
感谢您的帮助和时间。 丹
答案 0 :(得分:1)
在这种特殊情况下,您可以做的是验证您要插入的记录是否确实是唯一的。这样您就可以避免插入非唯一值,这个问题不再是问题。
话虽如此,许多特定的例外都是从SQLiteException
继承的,例如SQLiteConstraintException
。你也可以抓住具体的,做你必须做的事。