我正在尝试在我的onCreate() - 我的SQLiteOpenHelper的方法中执行.sql文件,以创建数据库的所有表并用数据填充它们。
如果由于语法错误而失败,我需要执行另一个文件。但在此之前,我需要回滚之前的更改。
如linked post所示,事务是在onCreate方法之外处理的。
因此可以在onCreate() - Method?
中回滚更改答案 0 :(得分:0)
如果查看beginTransaction()http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html#beginTransaction%28%29的SQLiteDatabase文档,您将看到使用标准的try / finally块,如果在到达setTransactionSuccessful()方法之前发生任何异常,则事务将被回滚。您还可以添加一个catch块来执行任何其他异常处理。