我正在尝试强制一个错误条件来测试一些异常处理,方法是在使用以下步骤删除一行后更新一行:
1. Load record into GUI
2. Pull .db3 file to Windows
3. Delete record with sqlite3
4. Push .db3 file back to Android
3. Save record from GUI
但是,ExecuteNonQuery()
没有抛出任何异常,也没有logcat中的任何内容。
为什么,如果对于第3步,数据库文件被重命名为抛出异常,而不是在删除记录时?
更新:使用sqlite3
直接从设备删除记录会导致同样的行为。
注意:三星Galaxy Tab2需要PIE(位置独立执行)版本。
答案 0 :(得分:1)
更新行不会在sql中抛出任何错误/异常。 当在数据库中找不到行时,更新查询不执行任何操作并且不显示错误/异常消息。
答案 1 :(得分:1)
更新查询不会引发任何错误。
答案 2 :(得分:0)
我不完全确定sql3数据提供程序。但是,您可能希望使用查询功能,而不是删除的非查询。获取查询中受删除影响的行。然后,当没有返回任何行时,抛出场景所需的抛出和异常广告。