@Override public <T extends Number> T currval(Sequence<T> sequence) { Field<T> currval = sequence.currval(); return select(currval).fetchOne(currval); }
@Override public <T extends Number> T currval(Sequence<T> sequence) { Field<T> currval = sequence.currval(); return select(currval).fetchOne(currval); }
@Override public <T extends Number> T nextval(Sequence<T> sequence) { Field<T> nextval = sequence.nextval(); return select(nextval).fetchOne(nextval); }
@Override public <T extends Number> T nextval(Sequence<T> sequence) { Field<T> nextval = sequence.nextval(); return select(nextval).fetchOne(nextval); }
private final int executeSelect() { final Field<T> field = asField(); outValues.put(returnParameter, create(configuration).select(field).fetchOne(field)); return 0; }
private final int executeSelect() { final Field<T> field = asField(); results.put(returnParameter, create(configuration).select(field).fetchOne(field)); return 0; }
@Override public BigInteger lastID() { switch (configuration().family()) { case DERBY: { Field<BigInteger> field = field("identity_val_local()", BigInteger.class); return select(field).fetchOne(field); } case H2: case HSQLDB: { Field<BigInteger> field = field("identity()", BigInteger.class); return select(field).fetchOne(field); } case CUBRID: case MARIADB: case MYSQL: { Field<BigInteger> field = field("last_insert_id()", BigInteger.class); return select(field).fetchOne(field); } case SQLITE: { Field<BigInteger> field = field("last_insert_rowid()", BigInteger.class); return select(field).fetchOne(field); } case POSTGRES: { Field<BigInteger> field = field("lastval()", BigInteger.class); return select(field).fetchOne(field); } default: throw new SQLDialectNotSupportedException("identity functionality not supported by " + configuration().dialect()); } }
case DERBY: { Field<BigInteger> field = field("identity_val_local()", BigInteger.class); return select(field).fetchOne(field); case HSQLDB: { Field<BigInteger> field = field("identity()", BigInteger.class); return select(field).fetchOne(field); case MYSQL: { Field<BigInteger> field = field("last_insert_id()", BigInteger.class); return select(field).fetchOne(field); return select(field).fetchOne(field);
public Instant now() { return txResult(tx -> tx.select(currentTimestamp().as("now")) .fetchOne(field("now", Timestamp.class)) .toInstant()); }