--- a/java/sql-dk/src/info/globalcode/sql/dk/DatabaseConnection.java Sun Dec 22 23:31:55 2013 +0100
+++ b/java/sql-dk/src/info/globalcode/sql/dk/DatabaseConnection.java Sun Dec 22 23:55:07 2013 +0100
@@ -76,8 +76,22 @@
formatter.writeParameters(sqlCommand.getParameters());
try (PreparedStatement ps = sqlCommand.prepareStatement(connection)) {
sqlCommand.parametrize(ps);
- try (ResultSet rs = ps.executeQuery()) {
- processResultSet(rs, formatter);
+
+ boolean isRS = ps.execute();
+ if (isRS) {
+ try (ResultSet rs = ps.getResultSet()) {
+ processResultSet(rs, formatter);
+ }
+ } else {
+ /**
+ * TODO: process UPDATE command
+ */
+ }
+
+ while (ps.getMoreResults() || ps.getUpdateCount() > -1) {
+ /**
+ * TODO: process more RS or UPDATEs
+ */
}
}
--- a/java/sql-dk/src/info/globalcode/sql/dk/SQLCommand.java Sun Dec 22 23:31:55 2013 +0100
+++ b/java/sql-dk/src/info/globalcode/sql/dk/SQLCommand.java Sun Dec 22 23:55:07 2013 +0100
@@ -36,7 +36,9 @@
this.query = query;
}
- public abstract PreparedStatement prepareStatement(Connection c) throws SQLException;
+ public PreparedStatement prepareStatement(Connection c) throws SQLException {
+ return c.prepareStatement(query);
+ }
public abstract void parametrize(PreparedStatement ps) throws SQLException;
--- a/java/sql-dk/src/info/globalcode/sql/dk/SQLCommandNamed.java Sun Dec 22 23:31:55 2013 +0100
+++ b/java/sql-dk/src/info/globalcode/sql/dk/SQLCommandNamed.java Sun Dec 22 23:55:07 2013 +0100
@@ -36,11 +36,6 @@
}
@Override
- public PreparedStatement prepareStatement(Connection c) throws SQLException {
- throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
- }
-
- @Override
public void parametrize(PreparedStatement ps) throws SQLException {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
--- a/java/sql-dk/src/info/globalcode/sql/dk/SQLCommandNumbered.java Sun Dec 22 23:31:55 2013 +0100
+++ b/java/sql-dk/src/info/globalcode/sql/dk/SQLCommandNumbered.java Sun Dec 22 23:55:07 2013 +0100
@@ -37,11 +37,6 @@
}
@Override
- public PreparedStatement prepareStatement(Connection c) throws SQLException {
- return c.prepareStatement(getQuery());
- }
-
- @Override
public void parametrize(PreparedStatement ps) throws SQLException {
int i = 1;
for (Parameter p : notNull(parameters)) {