@Override public void update(final String table, final Attributes keys, final AttributeUpdates attrs) throws IOException { try { JdbcSession session = new JdbcSession(this.connection()); for (final AttributeValueUpdate value : attrs.values()) { session = session.set(H2Data.value(value.getValue())); } for (final AttributeValue value : keys.values()) { session = session.set(H2Data.value(value)); } session.sql( String.format( "UPDATE %s SET %s WHERE %s", H2Data.encodeTableName(table), Joiner.on(',').join( Iterables.transform(attrs.keySet(), H2Data.WHERE) ), Joiner.on(H2Data.AND).join( Iterables.transform(keys.keySet(), H2Data.WHERE) ) ) ); session.execute(); } catch (final SQLException ex) { throw new IOException(ex); } }
@Override public void update(final String table, final Attributes keys, final AttributeUpdates attrs) throws IOException { try { JdbcSession session = new JdbcSession(this.connection()); for (final AttributeValueUpdate value : attrs.values()) { session = session.set(H2Data.value(value.getValue())); } for (final AttributeValue value : keys.values()) { session = session.set(H2Data.value(value)); } session.sql( String.format( "UPDATE %s SET %s WHERE %s", H2Data.encodeTableName(table), Joiner.on(',').join( Iterables.transform(attrs.keySet(), H2Data.WHERE) ), Joiner.on(H2Data.AND).join( Iterables.transform(keys.keySet(), H2Data.WHERE) ) ) ); session.execute(); } catch (final SQLException ex) { throw new IOException(ex); } }