我正在尝试使用jOOQ构建查询,这是我的测试代码:
DSLContext create = DSL.using(SQLDialect.DERBY);
String query = create.select().from(TABLE).limit(1).offset(0).getSQL()
我得到了查询:
select field1, field2...fieldN etc from TABLE offset ? rows fetch next ? rows only
问题是?
? rows fetch next ? rows only
它似乎忽略了我在限制和偏移中使用的值来构建查询,为什么?
我正在尝试从结果中选择第一行,我正在使用jooq 3.4.1
感谢您的帮助
答案 0 :(得分:1)
Query.getSQL()
返回带有?
的SQL字符串作为绑定变量的占位符。我们的想法是,您可以将此语句提供给PreparedStatement
,然后显式绑定所有可通过Query.getBindValues()
提供的变量。
您也可以通过调用Query.getSQL(ParamType)
来使jOOQ内联所有绑定变量:
String sql = query.getSQL(ParamType.INLINED);