@Override public void run(@NotNull final DBSession session) { for (int i = 0; i < retries; ++i) { List<String> commands = session.query(metaQuery).withParams(params).run(); try { for (String command : commands) { if (command != null && command.length() > 0) { session.command(command).run(); } } i = retries + 1; } catch (DBException e) { if (i + 1 >= retries) throw e; } } } });
@Override public R run(@NotNull final DBSession session) { return session.inTransaction(operation); } });
@Override public void run(@NotNull final DBSession session) { session.script(script).run(); } });
@Override public void run(@NotNull final DBSession session) { session.command("create table just_table_333 (x integer)").run(); session.inTransaction(new InTransactionNoResult() { @Override public void run(@NotNull final DBTransaction tran) { tran.command("insert into just_table_333 values (111), (222), (333)").run(); tran.query("select * from just_table_333", singleOf(Integer.class)) .packBy(1) .run(); } }); JdbcIntermediateSession intermediateSession = session.getSpecificService(JdbcIntermediateSession.class, ImplementationAccessibleService.Names.INTERMEDIATE_SERVICE); assert intermediateSession != null; assertThat(intermediateSession.countOpenedSeances()).isZero(); assertThat(intermediateSession.countOpenedCursors()).isZero(); } });
@Override public void run(@NotNull final DBSession session) { List<String> commands = session.query(metaQuery).withParams(params).run(); SqlScriptBuilder sb = new SqlScriptBuilder(); for (String command : commands) if (command != null && command.length() > 0) sb.add(command); SqlScript script = sb.build(); session.script(script).run(); } });
final String tableNameMask, final String[] tableTypes) { DatabaseMetaData md = session.getSpecificService(DatabaseMetaData.class, ImplementationAccessibleService.Names.JDBC_METADATA); if (md == null) throw new RuntimeException("Unable to obtain metadata from unknown database"); session.getSpecificService(Connection.class, ImplementationAccessibleService.Names.JDBC_CONNECTION); assert connection != null;
@Override public void run(@NotNull final DBSession session) { session.command("create table tab1 (x integer)").run(); session.inTransaction(new InTransactionNoResult() { @Override public void run(@NotNull final DBTransaction tran) { tran.command("insert into tab1 values(44)").run(); } }); final SqlQuery<Integer> query = new SqlQuery<Integer>("select * from tab1", singleOf(Integer.class)); int x = session.inTransaction(new InTransaction<Integer>() { @Override public Integer run(@NotNull final DBTransaction tran) { return tran.query(query).run(); } }); session.command("drop table tab1").run(); assertThat(x).isEqualTo(44); } });
@Override public void run(@NotNull final DBSession session) { List<Tetra> result = session.query(query).run(); assertThat(result).isEmpty(); } });
@Override public void run(@NotNull final DBSession session) { session.command(command).run(); } });
@Override public void run(@NotNull final DBSession session) { java.sql.Connection connection = session.getSpecificService(java.sql.Connection.class, ImplementationAccessibleService.Names.JDBC_CONNECTION); assertThat(connection).isNotNull() .isInstanceOf(java.sql.Connection.class); } });
@Override public void run(@NotNull final DBSession session) { DBQueryRunner<List<Number>> qr = session.query(query).packBy(10); qr.run(); ResultSetMetaData md = qr.getSpecificService(ResultSetMetaData.class, ImplementationAccessibleService.Names.JDBC_METADATA); assertThat(md).isNotNull(); String columnName = null; try { columnName = md.getColumnName(1); } catch (SQLException e) { throw new RuntimeException(e.getMessage(), e); } assertThat(columnName).isEqualToIgnoringCase("X"); } });
@Override public void run(@NotNull final DBSession session) { session.command("create table Turbo2000 (x smallint)").run(); DBCommandRunner cr = session.command("insert into Turbo2000 values (?)"); for (short i = 1; i <= 2000; i++) cr.withParams(i).run(); DBQueryRunner<Short[]> qr = session.query("select * from Turbo2000 order by 1", columnOf(Short.class)) .packBy(100); Short[] pack = qr.run(); assertThat(pack).isNotNull() .startsWith((short) 1) .endsWith((short) 100); int packs = 0; while (pack != null) { packs++; pack = qr.nextPack(); } assertThat(packs).isEqualTo(20); // 2000 / 100 = 20 } });
@Override public void run(@NotNull final DBSession session) { final IntegralIntermediateSession intermediateSession = session.getSpecificService( IntegralIntermediateSession.class, ImplementationAccessibleService.Names.INTERMEDIATE_SERVICE); assertThat(intermediateSession).isInstanceOf(JdbcIntermediateSession.class); } });
@Override public void run(@NotNull final DBSession session) { final Integer v = session.query("select 1 " + TH.fromSingleRowTable(), Layouts.singleOf(Integer.class)) .run(); assertThat(v).isNotNull() .isEqualTo(1); } });
@Override public void run(@NotNull final DBSession session) { session.script(script).run(); } });
@Override public void run(@NotNull final DBSession session) { session.inTransaction(operation); } });
@Override public void run(@NotNull final DBSession session) { DatabaseMetaData md = session.getSpecificService(DatabaseMetaData.class, ImplementationAccessibleService.Names.JDBC_METADATA); assertThat(md).isNotNull(); String driverName = null; try { driverName = md.getDriverName(); } catch (SQLException e) { throw new RuntimeException(e.getMessage(), e); } assertThat(driverName).isNotNull(); } });
@Override public void run(@NotNull final DBSession session) { session.script(script).run(); } });
@Override public void run(@NotNull final DBSession session) { DatabaseMetaData md = session.getSpecificService(DatabaseMetaData.class, ImplementationAccessibleService.Names.JDBC_METADATA); assertThat(md).isNotNull(); try { b.append("\tDatabaseProductName: ").append(md.getDatabaseProductName()).append('\n'); b.append("\tDriverName: ").append(md.getDriverName()).append('\n'); b.append("\tUserName: ").append(md.getUserName()).append('\n'); b.append("\tDatabaseProductVersion: ").append(md.getDatabaseProductVersion()).append('\n'); b.append("\tDriverVersion: ").append(md.getDriverVersion()).append('\n'); b.append("\tExtraNameCharacters: ").append(md.getExtraNameCharacters()).append('\n'); b.append("\tIdentifierQuoteString: ").append(md.getIdentifierQuoteString()).append('\n'); } catch (SQLException e) { throw new RuntimeException(e); } } });