2 回答

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超5個(gè)贊
這按預(yù)期工作。默認(rèn)Settings.statementType
值為StatementType.PREPARED_STATEMENT
,所以 jOOQ 默認(rèn)會(huì)在你的 SQL 字符串中生成綁定值占位符,可以用于在其他工具中執(zhí)行,例如 JDBC、Spring 等。
您可以將ParamType.INLINE
值傳遞給getSQL()
方法,或指定Settings.withStatementType(StatementType.STATIC_STATEMENT)
有關(guān)詳細(xì)信息,請(qǐng)考慮 Javadoc 中的解釋: https ://www.jooq.org/javadoc/latest/org/jooq/Query.html#getSQL--

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超5個(gè)贊
您應(yīng)該使用 jOOQ 生成的類中的字段名稱:
String sql = DSL.using(SQLDialect.MYSQL) .select(DSL.asterisk()) .from(YOURENTITY) .where(YOURENTITY.NAME.eq(nameParam)) .getSQL();
YOURENTITY
應(yīng)該是項(xiàng)目中 jOOQ 生成的類。nameParam
然后將是傳遞給包裝上述查詢的方法的參數(shù)。
jOOQ 有很多很好的文檔和很多例子: https ://www.jooq.org/doc/3.11/manual/sql-building/sql-statements/select-statement/where-clause/
添加回答
舉報(bào)