私はjava + sqlite3でトランザクションを行うことができます。私はgoogle already.Iをそれがロールバックステートメントにしたいので、ステートメント内のどこかが間違っているとすべてのステートメントが "space"に行き、DBがロールバックします。トランザクションを開始する前の瞬間まで。TRANSACTION in java + sqlite3
ここのようなものRoolback-stmt私の質問が分かりやすいと思います。英語は母国語ではないことを覚えておいてください。ここで私は声明であることをしたいコードの一部です:
ArrayList <String> al = new ArrayList <String>();
try {
// transaction begin;
ResultSet rs = stat.executeQuery("select _id, godziny_id from tblZmiany where harmonogram_id = " + h_id + " order by pracownik_id, Dzien");
while (rs.next()) {
al.add("insert into tblWykonanie (Zmiana_id, Godziny_id) values ('" + rs.getLong(1) + "', " + rs.getInt(2) + ");");
}
for (String s : al)
if (stat.executeUpdate(s) < 1) {
// Jeśli insert nie wstawił kolejnego rekordu
//rollback;
error_code = "Wystąpił problem podczas zatwierdzania harmonogramu.";
return false;
}
// commit;
} catch (SQLException e) {
e.printStackTrace();
System.out.println(e.getMessage());
return false;
} catch (Exception e) {
error_code = e.getMessage();
return false;
}
return true;
Zentusのsqlitejdbc-v056を使用しています – Bulit
Zentusドライバは幾分古いです。 –
私は今までこの仕事が完璧でしたので、このサンプルコードでここで取引を行う方法が必要なので、古くなっているかどうかは興味がありません。 – Bulit