次のjooqベースのコードを使用してデータベーステーブルデータに挿入し、クエリを生成したい:
Factory jf = getJooqFactory();
int surveyId = jf.nextval(SURVEY_ID_SEQ).intValue();
jf.insertInto(SURVEY)
.set(SURVEY.ID, surveyId)
.set(SURVEY.NAME, survey.getName())
.set(SURVEY.IDML, Factory.val(idml, SQLDataType.CLOB))
.execute();
問題は、このコードを使用してクエリを印刷すると
System.out.println(jf.insertInto(SURVEY)
.set(SURVEY.ID, null)
.set(SURVEY.NAME, null)
.set(SURVEY.IDML, null)
.getSQL());
私が得るのは、値の代わりに疑問符を使用したクエリです。
insert into "collect"."survey" ("id", "name", "idml") values (?, ?, ?)
変数の値を個別に出力すると、それらはすべて正しいです。.set() getSQL() に手動で文字列値を挿入しても、疑問符が返されます。