public abstract Connection connect(String host, int port, String dbName, String user, String pass) throws SQLException;
+ public abstract long nextVal(Connection con, Sequence seq) throws SQLException;
+
public boolean createTable(Connection con, Table table) throws SQLException
{
String sql = createTableSql(table);
return count;
}
- public long nextVal(Connection con, Sequence seq) throws SQLException
- {
- String sql = nextValSql(seq);
-
- try (PreparedStatement ps = con.prepareStatement(sql))
- {
- try (ResultSet rs = ps.executeQuery()) {
- if (rs.next()) {
- return rs.getLong(1);
- }
- }
- }
-
- throw new SQLException("No value returned for sequence: " + sql);
- }
-
int checkFlushBatch(PreparedStatement ps, int pendingValues, boolean forceFlush) throws SQLException
{
int count = 0;
return "DROP SEQUENCE " + seq.getName();
}
- abstract protected String nextValSql(Sequence seq);
-
boolean isValidInsert(Table table, Object[][] values)
{
if (null == table) return false;
return true;
}
+
+ int executeUpdate(Connection con, String sql) throws SQLException
+ {
+ try (PreparedStatement ps = con.prepareStatement(sql))
+ {
+ return ps.executeUpdate();
+ }
+ catch (SQLException exc) {
+ throw new SQLException("Failed to executeUpdate: " + sql, exc);
+ }
+ }
}