5

SO私はアンドロイド用のデータベースマネージャーを書いています.そのクラスでは、そのデータベースのテーブルに書き込むためのメソッドになります..

 SQLiteDatabase db = this.getReadableDatabase();
        db.beginTransaction();
        try {
          //DO some db writing
          db.setTransactionSuccessful();
        } finally {
          db.endTransaction();
        }

私の理解では、試行中にトランザクションが成功に設定されていない場合、これは自動的にデータをロールバックしますが、成功しなかった場合はどうすればキャッチできるので、成功またはロールバックでユーザーに通知できますか

4

2 に答える 2

6

finally ブロックの前に catch ブロックを置くだけです

SQLiteDatabase db = this.getReadableDatabase();
        db.beginTransaction();
        try {
          //DO some db writing
          db.setTransactionSuccessful();
        }catch(Exception e){
           // here you can catch all the exceptions
           e.printStack();
        } finally {
          db.endTransaction();
        }

try catch の例

http://www.java-samples.com/showtutorial.php?tutorialid=293

http://tutorials.jenkov.com/java-exception-handling/basic-try-catch-finally.html

于 2012-09-12T13:55:06.397 に答える