X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Fdatabase%2FDatabaseConnection.java;h=1c7962299b7151662d09e9b238513631728c0ff5;hb=e10fa0abc72abd9b4080ebd3c2986b101c7c35ea;hp=9f9193a7ad0f2fedafaa45fccb415fd22e33b8d2;hpb=c6ea5080ed8b31fb9844e2fad80b352d6a80bdf1;p=gigi.git diff --git a/src/org/cacert/gigi/database/DatabaseConnection.java b/src/org/cacert/gigi/database/DatabaseConnection.java index 9f9193a7..1c796229 100644 --- a/src/org/cacert/gigi/database/DatabaseConnection.java +++ b/src/org/cacert/gigi/database/DatabaseConnection.java @@ -44,7 +44,8 @@ public class DatabaseConnection { ensureOpen(); PreparedStatement statement = statements.get(query); if (statement == null) { - statement = c.prepareStatement(query); + statement = c.prepareStatement(query, + Statement.RETURN_GENERATED_KEYS); statements.put(query, statement); } return statement; @@ -86,4 +87,21 @@ public class DatabaseConnection { } credentials = conf; } + public void beginTransaction() throws SQLException { + c.setAutoCommit(false); + } + public void commitTransaction() throws SQLException { + c.commit(); + c.setAutoCommit(true); + } + public void quitTransaction() { + try { + if (!c.getAutoCommit()) { + c.rollback(); + c.setAutoCommit(true); + } + } catch (SQLException e) { + e.printStackTrace(); + } + } }