Hello Timm, I suspect that this issue is due to the fact that create.fieldByName() doesn't know the type of the column (hence, Object), and coerces that unknown type on the right hand side of the comparison predicate. That should be fixed in jOOQ. I have registered #2007 for this: https://github.com/jOOQ/jOOQ/issues/2007
In the mean time, try explicitly setting the type on your field: create.fieldByName(Timestamp.class, "TEST_COLUMN").lessThan(now) Cheers Lukas 2012/12/13 Timm Baumeister <[email protected]> > Is it possible to bind a java sql timestamp within the generated query? > > >> java.sql.Timestamp now = new java.sql.Timestamp(new >> Date().getTime()); >> Settings settings = new Settings(); >> settings.setStatementType(StatementType.STATIC_STATEMENT); >> Connection con = DriverManager.getConnection(...); >> final Factory create = new OracleFactory(con,settings); >> Statement s = con.createStatement(); >> s.execute("drop table test_table"); >> s.execute("create table test_table ( test_column DATE )"); >> s.execute("insert into test_table values (to_date('20020315', >> 'yyyymmdd'))"); > > final org.jooq.Table<org.jooq.Record> table = >> create.tableByName("TEST_TABLE"); >> final org.jooq.SelectSelectStep sss = create.select(create.count()); >> final org.jooq.SelectJoinStep sjs = sss.from(table); >> final org.jooq.SelectConditionStep scs = >> sjs.where(create.fieldByName("TEST_COLUMN").lessThan(now)); > > System.out.println(scs.toSQL()); > > >> > > Generates > > select count(*) from "TEST_TABLE" where "TEST_COLUMN" < >> '2012-12-12 22:01:21.929' > > > How can I get the correct to_date conversion for the variable now, > without having to use a prepared statement? > > Timm >
