- All Implemented Interfaces:
- Serializable,- Cloneable,- XMLAppendable
- See Also:
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected Booleanprotected Booleanprotected BackslashEscapingprotected Integerprotected Booleanprotected Booleanprotected Booleanprotected Integerprotected Booleanprotected Booleanprotected Booleanprotected Stringprotected Booleanprotected DiagnosticsConnectionprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected NestedCollectionEmulationprotected Booleanprotected ExecuteWithoutWhereprotected InvocationOrderprotected InvocationOrderprotected Booleanprotected Booleanprotected ExecuteWithoutWhereprotected Booleanprotected Booleanprotected FetchIntermediateResultprotected Integerprotected Integerprotected FetchTriggerValuesAfterReturningprotected Booleanprotected Booleanprotected Booleanprotected Integerprotected Integerprotected Booleanprotected Booleanprotected Booleanprotected SQLDialectprotected Localeprotected InterpreterNameLookupCaseSensitivityprotected List<InterpreterSearchSchema>protected Localeprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Integerprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected MigrationSchemaprotected MigrationSchemaprotected Booleanprotected Booleanprotected InvocationOrderprotected InvocationOrderprotected Booleanprotected List<MigrationSchema>protected Booleanprotected Stringprotected ParamCastModeprotected ParamTypeprotected Transformationprotected Stringprotected SQLDialectprotected Booleanprotected Stringprotected Stringprotected Booleanprotected Localeprotected Booleanprotected Booleanprotected ParseNameCaseprotected Stringprotected Booleanprotected List<ParseSearchSchema>protected Booleanprotected Stringprotected ParseUnknownFunctionsprotected ParseUnsupportedSyntaxprotected ParseWithMetaLookupsprotected QueryPoolableprotected Integerprotected WriteIfReadonlyprotected WriteIfReadonlyprotected WriteIfReadonlyprotected WriteIfReadonlyprotected InvocationOrderprotected InvocationOrderprotected Booleanprotected Booleanprotected Booleanprotected RenderDefaultNullabilityprotected Stringprotected Booleanprotected RenderFormattingprotected Booleanprotected RenderImplicitJoinTypeprotected RenderImplicitJoinTypeprotected RenderImplicitWindowRangeprotected RenderKeywordCaseprotected RenderKeywordStyleprotected Localeprotected RenderMappingprotected RenderNameCaseprotected Stringprotected RenderNameStyleprotected RenderOptionalKeywordprotected RenderOptionalKeywordprotected RenderOptionalKeywordprotected RenderOptionalKeywordprotected RenderOptionalKeywordprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected RenderQuotedNamesprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected RenderTableprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected StatementTypeprotected ThrowExceptionsprotected InvocationOrderprotected InvocationOrderprotected Booleanprotected Transformationprotected Transformationprotected Booleanprotected Transformationprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Booleanprotected Transformationprotected Transformationprotected Booleanprotected TransformUnneededArithmeticExpressionsprotected Booleanprotected Booleanprotected Booleanprotected UpdateUnchangedRecordsprotected InvocationOrderprotected InvocationOrderprotected Warning
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionfinal voidappendTo(XMLBuilder builder) clone()booleanWhether string literals should be escaped with backslash.A property specifying a batch size that should be applied to all automatically createdBatchedConnectioninstances.The default implementation of the ParsingConnection cache's LRU cache size.[#5826] The delimiter character to be used to delimit statements in batches.Whether to activate the DiagnosticsConnection, explicit byDEFAULT, implicit ifON, or turnedOFFentirely.[#3884] HowMULTISETsupport should be emulated.[#6771] Specifies whether DELETE statements are allowed to be executed lacking a WHERE clause.The order of invocation for [action]end() methods registeredExecuteListeners.The order of invocation for [action]start() methods registeredExecuteListeners.[#6771] Specifies whether UPDATE statements are allowed to be executed lacking a WHERE clause.Whether to fetch data into intermediateResultinstances.Whether server output should be fetched after each query execution.The default JDBC fetchSize property that should be applied to all jOOQ queries, for which no specific fetchSize value was specified.Fetch trigger values after aRETURNINGclause in dialects that don't have native support for this.The maximum number of allowed bind variables before inlining all values where0uses the dialect defaults:SQLDialect.ACCESS: 768SQLDialect.ASE: 2000SQLDialect.INGRES: 1024SQLDialect.ORACLE: 32767SQLDialect.POSTGRES: 32767SQLDialect.SQLITE: 999SQLDialect.SQLSERVER: 2100[#7095] The base to use to calculate the powers of when applying in list padding.[#7337] The dialect that should be used to interpret SQL DDL statements.The Locale to be used with any interpreter locale dependent logic, defaulting togetLocale().[#9633] The case sensitivity of identifiers used when interpreting SQL DDL statements.The Locale to be used with any locale dependent logic if there is not a more specific locale available.The default JDBC maxRows property that should be applied to all jOOQ queries, for which no specific maxRows value was specified.The default schema whose unqualified objects that are included in the migration.The database schema where the migration history is located.The order of invocation for [action]end() methods registeredMigrationListeners.The order of invocation for [action]start() methods registeredMigrationListeners.The character(s) to be used as a separator in paths encoded in ainvalid @linkNameWhether rendered bind values should be cast to their respective type.Specify how bind variables are to be rendered.Transform the parsed SQL to append missing table references to the query'sFROMorUSINGclause, if applicable.The date format to use when parsing functions whose behaviour depends on some session date format, such as NLS_DATE_FORMAT in Oracle[#7337] The input dialect that should be chosen to disambiguate ambiguous SQL syntax.[#8325] The ignore comment start token[#8325] The ignore comment stop tokenThe Locale to be used with any parser locale dependent logic, defaulting togetLocale().[#7337] The default name case for parsed identifiers.The prefix to use for named parameters in parsed SQL.The timestamp format to use when parsing functions whose behaviour depends on some session date format, such as NLS_TIMESTAMP_FORMAT in Oracle[#7344] Whether the parser should accept unknown functions.[#5917] Whether the parser should accept unsupported (but known) syntax.[#7163] Whether the parser should perform meta lookups in the Configuration's MetaProvider.The default JDBC poolable property that should be applied to all jOOQ queries, for which no specific poolable flag was specified.The default JDBC queryTimeout property that should be applied to all jOOQ queries, for which no specific queryTimeout was specified.[#9864] The behaviour when trying to insert into readonly columns usingTableRecord.insert().[#9864] The behaviour when trying to update a readonly column usingUpdatableRecord.update().The order of invocation for [action]end() methods registeredRecordListeners.The order of invocation for [action]start() methods registeredRecordListeners.Whether theNullability.DEFAULTnullablity should be rendered in generated DDL, and how it should be rendered.The token to place between the$$signs of a PostgreSQL dollar quoted string generated by jOOQ.All sorts of formatting flags / settings.The join type to be generated by implicit joins for to-many paths inSelectqueries.The join type to be generated by implicit joins for to-one paths inSelectqueries.Whether to render an explicit windowRANGEclause when an implicit clause is applied.Whether the case ofKeywordreferences should be modified in any way.Deprecated.The Locale to be used with any render locale dependent logic (as e.g.Configure render mapping for runtime schema / table rewriting in generated SQL.Whether the case ofNamereferences should be modified in any way.The prefix to use for named parameters in generated SQL.Deprecated.- 3.12.0 - [#5909] - UseRenderQuotedNamesandRenderNameCaseinstead.Whether to render the optionalASkeyword in table aliases, if it is optional in the output dialect.Whether to render the optionalASkeyword in table aliases, if it is optional in the output dialect.Whether to render optional parentheses to make associativity explicit, e.g.Whether to render the optionalINNERkeyword inINNER JOIN, if it is optional in the output dialect.Whether to render the optionalOUTERkeyword inOUTER JOIN, if it is optional in the output dialect.Whether rendered schema, table, column names, etc should be quoted.Whether any table name qualification should be rendered at all on columns.The type of statement that is to be executed.A strategy defining how exceptions from the database / JDBC driver should be propagatedThe order of invocation for [action]end() methods registeredTransactionListeners.The order of invocation for [action]start() methods registeredTransactionListeners.TransformGROUP BY [column index]clauses by substituting the column index.Deprecated.- 3.18.0 - [#14634] - The configuration of this transformation is deprecated.Transform Common Table Expressions (CTE) by inlining theirWITHclause definition to wherever they're referenced.Transform theQUALIFYclause to an equivalent derived table to filter on window functions.TransformROWNUMexpressions to correspondingLIMITclauses orROW_NUMBER()expressions.Transform arithmetic expressions on literals and bind variables.WhetherUpdatableRecord.update()calls should be executed if the record is unchanged.The order of invocation for [action]end() methods registeredVisitListeners.The order of invocation for [action]start() methods registeredVisitListeners.[#15286] The warning level when the deprecated static type registry was accessed by legacy code.inthashCode()[#7963] Apply workaround for ORA-04043 when inserting into Oracle tables with qualified, quoted identifiers, and fetching generated keysWhether fetched records should be attached to the fetching configuration.Whether thejava.time(JSR 310) typeOffsetDateTimeshould be bound natively to JDBC.Whether thejava.time(JSR 310) typeOffsetTimeshould be bound natively to JDBC.Whether parsing connection translations should be cached in the configuration.Whether JDBCPreparedStatementinstances should be cached in loader API.Whether record mappers should be cached in the configuration.[#5570] Whether exception stack traces should be enhanced with additional debug information.Whether to run theDiagnosticsListener.concatenationInPredicate(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.consecutiveAggregation(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.duplicateStatements(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.duplicateStatements(org.jooq.DiagnosticsContext)diagnostic with thetransformPatternsfeature activated.When set to true, this will add jOOQ's default logging DiagnosticsListeners.Whether to run theDiagnosticsListener.missingWasNullCall(org.jooq.DiagnosticsContext)diagnostic.Whether to run thediagnostic.invalid @linkorg.jooq.DiagnosticsListener#nullConditoin(org.jooq.DiagnosticsContext)Whether to run the various pattern transformation diagnostics.Whether to run theDiagnosticsListener.possiblyWrongExpression(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.repeatedStatements(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.tooManyColumnsFetched(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.tooManyRowsFetched(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.trivialCondition(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.unnecessaryWasNullCall(org.jooq.DiagnosticsContext)diagnostic.[#13418] Whether computed columns should be emulated in the client.[#6462] Use only the primary key to emulate MySQL's INSERT ..When set to true, this will add jOOQ's defaultLoggerListenerfor debug logging.[#14420] Whether constraint violations and otherSQLExceptionshould produce additional log information about the column name and data causing the problem.Whether store() and delete() methods should be executed with optimistic locking.Whether store() and delete() methods should be executed with optimistic locking also on "unversioned" tables, i.e.Deprecated.- 3.18.0 - [#13912] [#15316] - UsefetchTriggerValuesAfterReturninginstead.Whether warnings should be fetched after each query execution.Historically, zero-scale decimal types are generated as their most appropriate, corresponding integer type (e.g.[#5600] Whether IN lists in IN predicates should be padded to powers of inListPadBase (default 2).WhetherTableRecord.insert()calls should be executed if the record is unchanged.Using this flag, the interpreter will be able to delay the addition of foreign key declarations until the end of the interpretation run.Whether constructor parameter names obtained via reflection in Java 8+ should be considered by the DefaultRecordMapper.Whether constructor parameter names obtained via reflection in Kotlin should be considered by the DefaultRecordMapper.Whether constructor parameter names obtained from theConstructorPropertiesannotation should be considered by the DefaultRecordMapper.Whether JPA annotations should be considered by the DefaultRecordMapper.Whether constructor parameter names obtained from theRecordcomponent names should be considered by the DefaultRecordMapper.TheMetaimplementation that is backed byDatabaseMetaDatadoes not produce system generated indexes on constraints, by default.TheMetaimplementation that is backed byDatabaseMetaDatadoes not produce system generated sequences, by default.Whether migrations are allowed to be executed in inverse order.Whether to automatically existing schemas that are not yet managed by jOOQ Migrations.Whether a migration automatically runs a verification first.WhethergetMigrationHistorySchema()should be created if it doesn't exist.VariousmigrateTo()methods (e.g.Whether migrations revert any untracked changes in the schemas that are being migrated.WhethergetMigrationSchemata()should be created if they don't exist.[#8325] Whether the parser should ignore content between ignore comment tokens.[#13109] Whether the parser of the jOOQ Open Source Edition should ignore commercial only features, rather than failing.[#8469] Whether to parse default expressions retrieved fromDatabaseMetaData.[#8469] Whether to parse view sources retrieved fromDatabaseMetaData.[#12538] Whether the parser should retain comments and whitespace between queries when parsing multiple queries throughParser.parse(String).[#9780] Whether commands of the typeSET key = valueshould be parsed rather than ignored.Whether reflection information should be cached in the configuration.Whether any catalog name should be rendered at all.Whether stored function calls should be wrapped in scalar subqueries.Whether rendered SQL should be pretty-printed.Whether the jOOQGROUP_CONCATfunction should be overflow-protected by setting the@@group_concat_max_lensession variable in MySQL style database systems.Whether an additionalORDER BY rnclause should be rendered on emulated paginated queries.Whether the jOOQRETURNINGclause should map to SQL Server'sOUTPUTclause.Whether queries combined with set operators (e.g.Whether plain SQL templates (SQL) are rendered as raw string content.Whether a redundant(a invalid input: '<'= :a)predicate should be rendered for a(a, b) invalid input: '<' (:a, :b)predicate for theSEEKclause.Whether a(a, b) invalid input: '<' (:a, :b)row predicate should be rendered for theSEEKclause.Whether stored function calls should be wrapped in scalar subqueries.Whether any schema name should be rendered at all.Whether emulations that require repeating expressions should render variables for those expressions in derived tables.Whether calls to store(), insert() and update() should return all columns, not just identity columns.Whether calls to store(), insert() and update() should return values for columns that areDataType.computed().Whether calls to store(), insert() and update() should return values for columns that areDataType.defaulted().Whether calls to store(), insert() and update() should return the identity column.Whether calls to store(), insert(), update(), and delete() that are called on an UpdatableRecord that is created from a POJO (e.g.Transform ANSI join to table lists if possible.TransformQOM.CompareConditionand a few other types of condition to inline their bind values, in case they matchTransform various syntax patterns to better versions, if possible.Transformx != c1 AND x != c2tox NOT IN (c1, c2).Transforma + 1 = 2toa = 2 - 1, and other transformations.Transform1 / y * xtox / y, and other transformations.Transform bitwise operations to an equivalentBIT_GET(a, b)expression.Transform~(bitnand(x, y))tobitand(x, y)and~(bitand(x, y)tobitnand(x, y).Transform~(bitnor(x, y))tobitor(x, y)and~(bitor(x, y)tobitnor(x, y).Transform~(~(x))tox.Transform~(bitxnor(x, y))tobitxor(x, y)and~(bitxor(x, y)tobitxnor(x, y).Transform bitwise operations to an equivalentBIT_SET(a, b)orBIT_SET(a, b, c)expression.TransformCASE WHEN a IS NOT DISTINCT FROM b …to an equivalentDECODEfunction.TransformCASE … ELSE NULLremoving theELSEclause.TransformCASE WHEN a THEN x WHEN b THEN y ELSE y ENDtoCASE WHEN a THEN x ELSE y END.TransformCASE WHEN a THEN x WHEN b THEN x ENDtoCASE WHEN a OR b THEN x END.Transform a searchedCASE WHEN x = ..TransformCASEexpressions to their respective abbreviations.TransformCOUNT(1)or any otherCOUNT(const)toCOUNT(*).Transforma IS [ NOT ] DISTINCT FROM NULLtoa IS [ NOT ] NULL.Transform empty scalar subqueries like(SELECT 1 WHERE FALSE)toNULL.TransformCASE … ELSE CASE …by flattening the nestedCASE.Flatten nestedCASEabbreviations such asNVLorCASE.Flatten nestedDECODEfunctions.Transform(EXP(x) - EXP(-x)) / 2toSINH(x), and other transformations.Transform all repetitions of idempotent functions, such asUPPER(UPPER(s))toUPPER(s).TransformLN(x + SQRT(SQUARE(x) + 1))toASINH(x), and other transformations.TransformLN(value) / LN(base)toLOG(base, value), and other transformations.Activate debug logging of thetransformPatternsfeature.Transformx >= a AND x invalid input: '<'= atox = a.Transformx BETWEEN a AND b OR x BETWEEN b AND atox BETWEEN SYMMETRIC a AND b.Transformx IN (a, b, c) AND x IN (b, c, d)tox IN (b, c).Transformx = a OR x > atox >= a.Transformx >= a AND x invalid input: '<'= btox BETWEEN a AND b.Transform-(-(x))toxTransform(a + b) + (c + d)to((a + b) + c) + d.Transform 2 argumentCOALESCE(a, b)toNVL(a, b).Transform1 = atoa = 1.Transformx IN (a)tox = aandx NOT IN (a)tox != a.TransformNOT(p AND q)toNOT(p) OR NOT(q).TransformNOT (a != b)toa = b, and similar comparisons.TransformNOT(NOT(x))tox.TransformNOT (a IS NOT DISTINCT FROM b)toa IS DISTINCT FROM b.TransformNOT(p OR q)toNOT(p) AND NOT(q).Any {org.jooq.impl.QOM.UReturnsNullOnNullInput} function or expression withNULLarguments can be replaced byNULL.Transformx = c1 OR x = c2tox IN (c1, c2).Transform predicates comparing scalar subqueries with a count(SELECT COUNT(*) …) > 0to equivalentEXISTS (SELECT 1 …).Transform predicates comparing scalar subqueries with a count(SELECT COUNT(expr) …) > 0to equivalentEXISTS (SELECT 1 … WHERE expr IS NOT NULL).Transform complex predicates into simplerCASEabbreviations.TransformSIN(x) / COS(x)toTAN(x), and other transformations.TransformLTRIM(RTRIM(x))orRTRIM(LTRIM(x))toTRIM(x).Transform trivial bitwise comparisons likeBIT_OR(a, 0)toa.Transform trivial case abbreviations likeNVL(NULL, a)toa.Transform trivial predicates like1 = 1toTRUE.TransformSELECT DISTINCT a, b FROM t GROUP BY a, btoSELECT a, b FROM t GROUP BY a, b.Transform[ NOT ] EXISTS (SELECT DISTINCT a, b FROM t ORDER BY c LIMIT d)to[ NOT ] EXISTS (SELECT 1 FROM t).TransformSELECT a, b FROM t GROUP BY a, a, btoSELECT a, b FROM t GROUP BY a, b.TransformSELECT * FROM t INNER JOIN u ON TRUEtoSELECT * FROM t CROSS JOIN u.TransformSELECT a, b FROM t ORDER BY a, a, btoSELECT a, b FROM t ORDER BY a, b.TransformSELECT (SELECT 1)toSELECT 1.TransformCASEby removing unreachable clauses.TransformDECODEby removing unreachable clauses.Transform table lists to ANSI join if possible.Whether primary key values are deemed to be "updatable" in jOOQ.Whether store(), insert(), and update() methods should update the record timestamp prior to the operation, for use withexecuteWithOptimisticLocking.Whether store(), insert(), and update() methods should update the record version prior to the operation, for use withexecuteWithOptimisticLocking.voidsetApplyWorkaroundFor7962(Boolean value) [#7963] Apply workaround for ORA-04043 when inserting into Oracle tables with qualified, quoted identifiers, and fetching generated keysvoidsetAttachRecords(Boolean value) Whether fetched records should be attached to the fetching configuration.voidWhether string literals should be escaped with backslash.voidsetBatchSize(Integer value) A property specifying a batch size that should be applied to all automatically createdBatchedConnectioninstances.voidsetBindOffsetDateTimeType(Boolean value) Whether thejava.time(JSR 310) typeOffsetDateTimeshould be bound natively to JDBC.voidsetBindOffsetTimeType(Boolean value) Whether thejava.time(JSR 310) typeOffsetTimeshould be bound natively to JDBC.voidsetCacheParsingConnection(Boolean value) Whether parsing connection translations should be cached in the configuration.voidThe default implementation of the ParsingConnection cache's LRU cache size.voidWhether JDBCPreparedStatementinstances should be cached in loader API.voidsetCacheRecordMappers(Boolean value) Whether record mappers should be cached in the configuration.voidsetDebugInfoOnStackTrace(Boolean value) [#5570] Whether exception stack traces should be enhanced with additional debug information.voidsetDelimiter(String value) [#5826] The delimiter character to be used to delimit statements in batches.voidWhether to run theDiagnosticsListener.concatenationInPredicate(org.jooq.DiagnosticsContext)diagnostic.voidWhether to activate the DiagnosticsConnection, explicit byDEFAULT, implicit ifON, or turnedOFFentirely.voidWhether to run theDiagnosticsListener.consecutiveAggregation(org.jooq.DiagnosticsContext)diagnostic.voidWhether to run theDiagnosticsListener.duplicateStatements(org.jooq.DiagnosticsContext)diagnostic.voidWhether to run theDiagnosticsListener.duplicateStatements(org.jooq.DiagnosticsContext)diagnostic with thetransformPatternsfeature activated.voidsetDiagnosticsLogging(Boolean value) When set to true, this will add jOOQ's default logging DiagnosticsListeners.voidWhether to run theDiagnosticsListener.missingWasNullCall(org.jooq.DiagnosticsContext)diagnostic.voidWhether to run thediagnostic.invalid @linkorg.jooq.DiagnosticsListener#nullConditoin(org.jooq.DiagnosticsContext)voidsetDiagnosticsPatterns(Boolean value) Whether to run the various pattern transformation diagnostics.voidWhether to run theDiagnosticsListener.possiblyWrongExpression(org.jooq.DiagnosticsContext)diagnostic.voidWhether to run theDiagnosticsListener.repeatedStatements(org.jooq.DiagnosticsContext)diagnostic.voidWhether to run theDiagnosticsListener.tooManyColumnsFetched(org.jooq.DiagnosticsContext)diagnostic.voidWhether to run theDiagnosticsListener.tooManyRowsFetched(org.jooq.DiagnosticsContext)diagnostic.voidWhether to run theDiagnosticsListener.trivialCondition(org.jooq.DiagnosticsContext)diagnostic.voidWhether to run theDiagnosticsListener.unnecessaryWasNullCall(org.jooq.DiagnosticsContext)diagnostic.voidsetEmulateComputedColumns(Boolean value) [#13418] Whether computed columns should be emulated in the client.void[#3884] HowMULTISETsupport should be emulated.void[#6462] Use only the primary key to emulate MySQL's INSERT ..void[#6771] Specifies whether DELETE statements are allowed to be executed lacking a WHERE clause.voidThe order of invocation for [action]end() methods registeredExecuteListeners.voidThe order of invocation for [action]start() methods registeredExecuteListeners.voidsetExecuteLogging(Boolean value) When set to true, this will add jOOQ's defaultLoggerListenerfor debug logging.void[#14420] Whether constraint violations and otherSQLExceptionshould produce additional log information about the column name and data causing the problem.void[#6771] Specifies whether UPDATE statements are allowed to be executed lacking a WHERE clause.voidWhether store() and delete() methods should be executed with optimistic locking.voidWhether store() and delete() methods should be executed with optimistic locking also on "unversioned" tables, i.e.voidWhether to fetch data into intermediateResultinstances.voidsetFetchServerOutputSize(Integer value) Whether server output should be fetched after each query execution.voidsetFetchSize(Integer value) The default JDBC fetchSize property that should be applied to all jOOQ queries, for which no specific fetchSize value was specified.voidFetch trigger values after aRETURNINGclause in dialects that don't have native support for this.voidDeprecated.- 3.18.0 - [#13912] [#15316] - UsefetchTriggerValuesAfterReturninginstead.voidsetFetchWarnings(Boolean value) Whether warnings should be fetched after each query execution.voidHistorically, zero-scale decimal types are generated as their most appropriate, corresponding integer type (e.g.voidsetInlineThreshold(Integer value) The maximum number of allowed bind variables before inlining all values where0uses the dialect defaults:SQLDialect.ACCESS: 768SQLDialect.ASE: 2000SQLDialect.INGRES: 1024SQLDialect.ORACLE: 32767SQLDialect.POSTGRES: 32767SQLDialect.SQLITE: 999SQLDialect.SQLSERVER: 2100voidsetInListPadBase(Integer value) [#7095] The base to use to calculate the powers of when applying in list padding.voidsetInListPadding(Boolean value) [#5600] Whether IN lists in IN predicates should be padded to powers of inListPadBase (default 2).voidsetInsertUnchangedRecords(Boolean value) WhetherTableRecord.insert()calls should be executed if the record is unchanged.voidUsing this flag, the interpreter will be able to delay the addition of foreign key declarations until the end of the interpretation run.voidsetInterpreterDialect(SQLDialect value) [#7337] The dialect that should be used to interpret SQL DDL statements.voidsetInterpreterLocale(Locale value) The Locale to be used with any interpreter locale dependent logic, defaulting togetLocale().void[#9633] The case sensitivity of identifiers used when interpreting SQL DDL statements.voidsetInterpreterSearchPath(List<InterpreterSearchSchema> interpreterSearchPath) voidThe Locale to be used with any locale dependent logic if there is not a more specific locale available.voidWhether constructor parameter names obtained via reflection in Java 8+ should be considered by the DefaultRecordMapper.voidWhether constructor parameter names obtained via reflection in Kotlin should be considered by the DefaultRecordMapper.voidWhether constructor parameter names obtained from theConstructorPropertiesannotation should be considered by the DefaultRecordMapper.voidsetMapJPAAnnotations(Boolean value) Whether JPA annotations should be considered by the DefaultRecordMapper.voidWhether constructor parameter names obtained from theRecordcomponent names should be considered by the DefaultRecordMapper.voidsetMaxRows(Integer value) The default JDBC maxRows property that should be applied to all jOOQ queries, for which no specific maxRows value was specified.voidTheMetaimplementation that is backed byDatabaseMetaDatadoes not produce system generated indexes on constraints, by default.voidTheMetaimplementation that is backed byDatabaseMetaDatadoes not produce system generated sequences, by default.voidsetMigrationAllowsUndo(Boolean value) Whether migrations are allowed to be executed in inverse order.voidsetMigrationAutoBaseline(Boolean value) Whether to automatically existing schemas that are not yet managed by jOOQ Migrations.voidWhether a migration automatically runs a verification first.voidThe default schema whose unqualified objects that are included in the migration.voidThe database schema where the migration history is located.voidWhethergetMigrationHistorySchema()should be created if it doesn't exist.voidVariousmigrateTo()methods (e.g.voidThe order of invocation for [action]end() methods registeredMigrationListeners.voidThe order of invocation for [action]start() methods registeredMigrationListeners.voidWhether migrations revert any untracked changes in the schemas that are being migrated.voidsetMigrationSchemata(List<MigrationSchema> migrationSchemata) voidWhethergetMigrationSchemata()should be created if they don't exist.voidsetNamePathSeparator(String value) The character(s) to be used as a separator in paths encoded in ainvalid @linkNamevoidsetParamCastMode(ParamCastMode value) Whether rendered bind values should be cast to their respective type.voidsetParamType(ParamType value) Specify how bind variables are to be rendered.voidTransform the parsed SQL to append missing table references to the query'sFROMorUSINGclause, if applicable.voidsetParseDateFormat(String value) The date format to use when parsing functions whose behaviour depends on some session date format, such as NLS_DATE_FORMAT in OraclevoidsetParseDialect(SQLDialect value) [#7337] The input dialect that should be chosen to disambiguate ambiguous SQL syntax.voidsetParseIgnoreComments(Boolean value) [#8325] Whether the parser should ignore content between ignore comment tokens.voidsetParseIgnoreCommentStart(String value) [#8325] The ignore comment start tokenvoidsetParseIgnoreCommentStop(String value) [#8325] The ignore comment stop tokenvoid[#13109] Whether the parser of the jOOQ Open Source Edition should ignore commercial only features, rather than failing.voidsetParseLocale(Locale value) The Locale to be used with any parser locale dependent logic, defaulting togetLocale().void[#8469] Whether to parse default expressions retrieved fromDatabaseMetaData.voidsetParseMetaViewSources(Boolean value) [#8469] Whether to parse view sources retrieved fromDatabaseMetaData.voidsetParseNameCase(ParseNameCase value) [#7337] The default name case for parsed identifiers.voidsetParseNamedParamPrefix(String value) The prefix to use for named parameters in parsed SQL.void[#12538] Whether the parser should retain comments and whitespace between queries when parsing multiple queries throughParser.parse(String).voidsetParseSearchPath(List<ParseSearchSchema> parseSearchPath) voidsetParseSetCommands(Boolean value) [#9780] Whether commands of the typeSET key = valueshould be parsed rather than ignored.voidsetParseTimestampFormat(String value) The timestamp format to use when parsing functions whose behaviour depends on some session date format, such as NLS_TIMESTAMP_FORMAT in Oraclevoid[#7344] Whether the parser should accept unknown functions.void[#5917] Whether the parser should accept unsupported (but known) syntax.void[#7163] Whether the parser should perform meta lookups in the Configuration's MetaProvider.voidsetQueryPoolable(QueryPoolable value) The default JDBC poolable property that should be applied to all jOOQ queries, for which no specific poolable flag was specified.voidsetQueryTimeout(Integer value) The default JDBC queryTimeout property that should be applied to all jOOQ queries, for which no specific queryTimeout was specified.voidsetReadonlyInsert(WriteIfReadonly value) void[#9864] The behaviour when trying to insert into readonly columns usingTableRecord.insert().void[#9864] The behaviour when trying to update a readonly column usingUpdatableRecord.update().voidsetReadonlyUpdate(WriteIfReadonly value) voidThe order of invocation for [action]end() methods registeredRecordListeners.voidThe order of invocation for [action]start() methods registeredRecordListeners.voidsetReflectionCaching(Boolean value) Whether reflection information should be cached in the configuration.voidsetRenderCatalog(Boolean value) Whether any catalog name should be rendered at all.voidWhether stored function calls should be wrapped in scalar subqueries.voidWhether theNullability.DEFAULTnullablity should be rendered in generated DDL, and how it should be rendered.voidThe token to place between the$$signs of a PostgreSQL dollar quoted string generated by jOOQ.voidsetRenderFormatted(Boolean value) Whether rendered SQL should be pretty-printed.voidAll sorts of formatting flags / settings.voidWhether the jOOQGROUP_CONCATfunction should be overflow-protected by setting the@@group_concat_max_lensession variable in MySQL style database systems.voidThe join type to be generated by implicit joins for to-many paths inSelectqueries.voidThe join type to be generated by implicit joins for to-one paths inSelectqueries.voidWhether to render an explicit windowRANGEclause when an implicit clause is applied.voidWhether the case ofKeywordreferences should be modified in any way.voidDeprecated.- 3.12.0 - [#5909] - UseRenderKeywordCaseinstead.voidsetRenderLocale(Locale value) The Locale to be used with any render locale dependent logic (as e.g.voidsetRenderMapping(RenderMapping value) Configure render mapping for runtime schema / table rewriting in generated SQL.voidsetRenderNameCase(RenderNameCase value) Whether the case ofNamereferences should be modified in any way.voidsetRenderNamedParamPrefix(String value) The prefix to use for named parameters in generated SQL.voidDeprecated.- 3.12.0 - [#5909] - UseRenderQuotedNamesandRenderNameCaseinstead.voidWhether to render the optionalASkeyword in table aliases, if it is optional in the output dialect.voidWhether to render the optionalASkeyword in table aliases, if it is optional in the output dialect.voidWhether to render optional parentheses to make associativity explicit, e.g.voidWhether to render the optionalINNERkeyword inINNER JOIN, if it is optional in the output dialect.voidWhether to render the optionalOUTERkeyword inOUTER JOIN, if it is optional in the output dialect.voidWhether an additionalORDER BY rnclause should be rendered on emulated paginated queries.voidWhether the jOOQRETURNINGclause should map to SQL Server'sOUTPUTclause.voidWhether queries combined with set operators (e.g.voidWhether plain SQL templates (SQL) are rendered as raw string content.voidWhether rendered schema, table, column names, etc should be quoted.voidWhether a redundant(a invalid input: '<'= :a)predicate should be rendered for a(a, b) invalid input: '<' (:a, :b)predicate for theSEEKclause.voidWhether a(a, b) invalid input: '<' (:a, :b)row predicate should be rendered for theSEEKclause.voidWhether stored function calls should be wrapped in scalar subqueries.voidsetRenderSchema(Boolean value) Whether any schema name should be rendered at all.voidsetRenderTable(RenderTable value) Whether any table name qualification should be rendered at all on columns.voidWhether emulations that require repeating expressions should render variables for those expressions in derived tables.voidWhether calls to store(), insert() and update() should return all columns, not just identity columns.voidWhether calls to store(), insert() and update() should return values for columns that areDataType.computed().voidWhether calls to store(), insert() and update() should return values for columns that areDataType.defaulted().voidWhether calls to store(), insert() and update() should return the identity column.voidsetReturnRecordToPojo(Boolean value) Whether calls to store(), insert(), update(), and delete() that are called on an UpdatableRecord that is created from a POJO (e.g.voidsetStatementType(StatementType value) The type of statement that is to be executed.voidA strategy defining how exceptions from the database / JDBC driver should be propagatedvoidThe order of invocation for [action]end() methods registeredTransactionListeners.voidThe order of invocation for [action]start() methods registeredTransactionListeners.voidTransform ANSI join to table lists if possible.voidTransformGROUP BY [column index]clauses by substituting the column index.voidDeprecated.- 3.18.0 - [#14634] - The configuration of this transformation is deprecated.voidTransformQOM.CompareConditionand a few other types of condition to inline their bind values, in case they matchvoidTransform Common Table Expressions (CTE) by inlining theirWITHclause definition to wherever they're referenced.voidsetTransformPatterns(Boolean value) Transform various syntax patterns to better versions, if possible.voidTransformx != c1 AND x != c2tox NOT IN (c1, c2).voidTransforma + 1 = 2toa = 2 - 1, and other transformations.voidTransform1 / y * xtox / y, and other transformations.voidTransform bitwise operations to an equivalentBIT_GET(a, b)expression.voidTransform~(bitnand(x, y))tobitand(x, y)and~(bitand(x, y)tobitnand(x, y).voidTransform~(bitnor(x, y))tobitor(x, y)and~(bitor(x, y)tobitnor(x, y).voidTransform~(~(x))tox.voidTransform~(bitxnor(x, y))tobitxor(x, y)and~(bitxor(x, y)tobitxnor(x, y).voidTransform bitwise operations to an equivalentBIT_SET(a, b)orBIT_SET(a, b, c)expression.voidTransformCASE WHEN a IS NOT DISTINCT FROM b …to an equivalentDECODEfunction.voidTransformCASE … ELSE NULLremoving theELSEclause.voidTransformCASE WHEN a THEN x WHEN b THEN y ELSE y ENDtoCASE WHEN a THEN x ELSE y END.voidTransformCASE WHEN a THEN x WHEN b THEN x ENDtoCASE WHEN a OR b THEN x END.voidTransform a searchedCASE WHEN x = ..voidTransformCASEexpressions to their respective abbreviations.voidTransformCOUNT(1)or any otherCOUNT(const)toCOUNT(*).voidTransforma IS [ NOT ] DISTINCT FROM NULLtoa IS [ NOT ] NULL.voidTransform empty scalar subqueries like(SELECT 1 WHERE FALSE)toNULL.voidTransformCASE … ELSE CASE …by flattening the nestedCASE.voidFlatten nestedCASEabbreviations such asNVLorCASE.voidFlatten nestedDECODEfunctions.voidTransform(EXP(x) - EXP(-x)) / 2toSINH(x), and other transformations.voidTransform all repetitions of idempotent functions, such asUPPER(UPPER(s))toUPPER(s).voidTransformLN(x + SQRT(SQUARE(x) + 1))toASINH(x), and other transformations.voidTransformLN(value) / LN(base)toLOG(base, value), and other transformations.voidActivate debug logging of thetransformPatternsfeature.voidTransformx >= a AND x invalid input: '<'= atox = a.voidTransformx BETWEEN a AND b OR x BETWEEN b AND atox BETWEEN SYMMETRIC a AND b.voidTransformx IN (a, b, c) AND x IN (b, c, d)tox IN (b, c).voidTransformx = a OR x > atox >= a.voidTransformx >= a AND x invalid input: '<'= btox BETWEEN a AND b.voidTransform-(-(x))toxvoidTransform(a + b) + (c + d)to((a + b) + c) + d.voidTransform 2 argumentCOALESCE(a, b)toNVL(a, b).voidTransform1 = atoa = 1.voidTransformx IN (a)tox = aandx NOT IN (a)tox != a.voidTransformNOT(p AND q)toNOT(p) OR NOT(q).voidTransformNOT (a != b)toa = b, and similar comparisons.voidTransformNOT(NOT(x))tox.voidTransformNOT (a IS NOT DISTINCT FROM b)toa IS DISTINCT FROM b.voidsetTransformPatternsNotOr(Boolean value) TransformNOT(p OR q)toNOT(p) AND NOT(q).voidAny {org.jooq.impl.QOM.UReturnsNullOnNullInput} function or expression withNULLarguments can be replaced byNULL.voidTransformx = c1 OR x = c2tox IN (c1, c2).voidTransform predicates comparing scalar subqueries with a count(SELECT COUNT(*) …) > 0to equivalentEXISTS (SELECT 1 …).voidTransform predicates comparing scalar subqueries with a count(SELECT COUNT(expr) …) > 0to equivalentEXISTS (SELECT 1 … WHERE expr IS NOT NULL).voidTransform complex predicates into simplerCASEabbreviations.voidTransformSIN(x) / COS(x)toTAN(x), and other transformations.voidsetTransformPatternsTrim(Boolean value) TransformLTRIM(RTRIM(x))orRTRIM(LTRIM(x))toTRIM(x).voidTransform trivial bitwise comparisons likeBIT_OR(a, 0)toa.voidTransform trivial case abbreviations likeNVL(NULL, a)toa.voidTransform trivial predicates like1 = 1toTRUE.voidTransformSELECT DISTINCT a, b FROM t GROUP BY a, btoSELECT a, b FROM t GROUP BY a, b.voidTransform[ NOT ] EXISTS (SELECT DISTINCT a, b FROM t ORDER BY c LIMIT d)to[ NOT ] EXISTS (SELECT 1 FROM t).voidTransformSELECT a, b FROM t GROUP BY a, a, btoSELECT a, b FROM t GROUP BY a, b.voidTransformSELECT * FROM t INNER JOIN u ON TRUEtoSELECT * FROM t CROSS JOIN u.voidTransformSELECT a, b FROM t ORDER BY a, a, btoSELECT a, b FROM t ORDER BY a, b.voidTransformSELECT (SELECT 1)toSELECT 1.voidTransformCASEby removing unreachable clauses.voidTransformDECODEby removing unreachable clauses.voidTransform theQUALIFYclause to an equivalent derived table to filter on window functions.voidsetTransformRownum(Transformation value) TransformROWNUMexpressions to correspondingLIMITclauses orROW_NUMBER()expressions.voidTransform table lists to ANSI join if possible.voidTransform arithmetic expressions on literals and bind variables.voidsetUpdatablePrimaryKeys(Boolean value) Whether primary key values are deemed to be "updatable" in jOOQ.voidsetUpdateRecordTimestamp(Boolean value) Whether store(), insert(), and update() methods should update the record timestamp prior to the operation, for use withexecuteWithOptimisticLocking.voidsetUpdateRecordVersion(Boolean value) Whether store(), insert(), and update() methods should update the record version prior to the operation, for use withexecuteWithOptimisticLocking.voidWhetherUpdatableRecord.update()calls should be executed if the record is unchanged.voidThe order of invocation for [action]end() methods registeredVisitListeners.voidThe order of invocation for [action]start() methods registeredVisitListeners.void[#15286] The warning level when the deprecated static type registry was accessed by legacy code.toString()[#7963] Apply workaround for ORA-04043 when inserting into Oracle tables with qualified, quoted identifiers, and fetching generated keyswithAttachRecords(Boolean value) Whether fetched records should be attached to the fetching configuration.Whether string literals should be escaped with backslash.withBatchSize(Integer value) A property specifying a batch size that should be applied to all automatically createdBatchedConnectioninstances.Whether thejava.time(JSR 310) typeOffsetDateTimeshould be bound natively to JDBC.withBindOffsetTimeType(Boolean value) Whether thejava.time(JSR 310) typeOffsetTimeshould be bound natively to JDBC.Whether parsing connection translations should be cached in the configuration.The default implementation of the ParsingConnection cache's LRU cache size.Whether JDBCPreparedStatementinstances should be cached in loader API.withCacheRecordMappers(Boolean value) Whether record mappers should be cached in the configuration.withDebugInfoOnStackTrace(Boolean value) [#5570] Whether exception stack traces should be enhanced with additional debug information.withDelimiter(String value) [#5826] The delimiter character to be used to delimit statements in batches.Whether to run theDiagnosticsListener.concatenationInPredicate(org.jooq.DiagnosticsContext)diagnostic.Whether to activate the DiagnosticsConnection, explicit byDEFAULT, implicit ifON, or turnedOFFentirely.Whether to run theDiagnosticsListener.consecutiveAggregation(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.duplicateStatements(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.duplicateStatements(org.jooq.DiagnosticsContext)diagnostic with thetransformPatternsfeature activated.withDiagnosticsLogging(Boolean value) When set to true, this will add jOOQ's default logging DiagnosticsListeners.Whether to run theDiagnosticsListener.missingWasNullCall(org.jooq.DiagnosticsContext)diagnostic.Whether to run thediagnostic.invalid @linkorg.jooq.DiagnosticsListener#nullConditoin(org.jooq.DiagnosticsContext)withDiagnosticsPatterns(Boolean value) Whether to run the various pattern transformation diagnostics.Whether to run theDiagnosticsListener.possiblyWrongExpression(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.repeatedStatements(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.tooManyColumnsFetched(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.tooManyRowsFetched(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.trivialCondition(org.jooq.DiagnosticsContext)diagnostic.Whether to run theDiagnosticsListener.unnecessaryWasNullCall(org.jooq.DiagnosticsContext)diagnostic.[#13418] Whether computed columns should be emulated in the client.[#3884] HowMULTISETsupport should be emulated.[#6462] Use only the primary key to emulate MySQL's INSERT ..[#6771] Specifies whether DELETE statements are allowed to be executed lacking a WHERE clause.The order of invocation for [action]end() methods registeredExecuteListeners.The order of invocation for [action]start() methods registeredExecuteListeners.withExecuteLogging(Boolean value) When set to true, this will add jOOQ's defaultLoggerListenerfor debug logging.[#14420] Whether constraint violations and otherSQLExceptionshould produce additional log information about the column name and data causing the problem.[#6771] Specifies whether UPDATE statements are allowed to be executed lacking a WHERE clause.Whether store() and delete() methods should be executed with optimistic locking.Whether store() and delete() methods should be executed with optimistic locking also on "unversioned" tables, i.e.Whether to fetch data into intermediateResultinstances.withFetchServerOutputSize(Integer value) Whether server output should be fetched after each query execution.withFetchSize(Integer value) The default JDBC fetchSize property that should be applied to all jOOQ queries, for which no specific fetchSize value was specified.Fetch trigger values after aRETURNINGclause in dialects that don't have native support for this.Deprecated.- 3.18.0 - [#13912] [#15316] - UsefetchTriggerValuesAfterReturninginstead.withFetchWarnings(Boolean value) Whether warnings should be fetched after each query execution.Historically, zero-scale decimal types are generated as their most appropriate, corresponding integer type (e.g.withInlineThreshold(Integer value) The maximum number of allowed bind variables before inlining all values where0uses the dialect defaults:SQLDialect.ACCESS: 768SQLDialect.ASE: 2000SQLDialect.INGRES: 1024SQLDialect.ORACLE: 32767SQLDialect.POSTGRES: 32767SQLDialect.SQLITE: 999SQLDialect.SQLSERVER: 2100withInListPadBase(Integer value) [#7095] The base to use to calculate the powers of when applying in list padding.withInListPadding(Boolean value) [#5600] Whether IN lists in IN predicates should be padded to powers of inListPadBase (default 2).WhetherTableRecord.insert()calls should be executed if the record is unchanged.Using this flag, the interpreter will be able to delay the addition of foreign key declarations until the end of the interpretation run.withInterpreterDialect(SQLDialect value) [#7337] The dialect that should be used to interpret SQL DDL statements.withInterpreterLocale(Locale value) The Locale to be used with any interpreter locale dependent logic, defaulting togetLocale().[#9633] The case sensitivity of identifiers used when interpreting SQL DDL statements.withInterpreterSearchPath(List<InterpreterSearchSchema> interpreterSearchPath) withInterpreterSearchPath(InterpreterSearchSchema... values) withLocale(Locale value) The Locale to be used with any locale dependent logic if there is not a more specific locale available.Whether constructor parameter names obtained via reflection in Java 8+ should be considered by the DefaultRecordMapper.Whether constructor parameter names obtained via reflection in Kotlin should be considered by the DefaultRecordMapper.Whether constructor parameter names obtained from theConstructorPropertiesannotation should be considered by the DefaultRecordMapper.withMapJPAAnnotations(Boolean value) Whether JPA annotations should be considered by the DefaultRecordMapper.Whether constructor parameter names obtained from theRecordcomponent names should be considered by the DefaultRecordMapper.withMaxRows(Integer value) The default JDBC maxRows property that should be applied to all jOOQ queries, for which no specific maxRows value was specified.TheMetaimplementation that is backed byDatabaseMetaDatadoes not produce system generated indexes on constraints, by default.TheMetaimplementation that is backed byDatabaseMetaDatadoes not produce system generated sequences, by default.withMigrationAllowsUndo(Boolean value) Whether migrations are allowed to be executed in inverse order.withMigrationAutoBaseline(Boolean value) Whether to automatically existing schemas that are not yet managed by jOOQ Migrations.Whether a migration automatically runs a verification first.The default schema whose unqualified objects that are included in the migration.The database schema where the migration history is located.WhethergetMigrationHistorySchema()should be created if it doesn't exist.VariousmigrateTo()methods (e.g.The order of invocation for [action]end() methods registeredMigrationListeners.The order of invocation for [action]start() methods registeredMigrationListeners.Whether migrations revert any untracked changes in the schemas that are being migrated.withMigrationSchemata(List<MigrationSchema> migrationSchemata) withMigrationSchemata(MigrationSchema... values) WhethergetMigrationSchemata()should be created if they don't exist.withNamePathSeparator(String value) The character(s) to be used as a separator in paths encoded in ainvalid @linkNamewithParamCastMode(ParamCastMode value) Whether rendered bind values should be cast to their respective type.withParamType(ParamType value) Specify how bind variables are to be rendered.Transform the parsed SQL to append missing table references to the query'sFROMorUSINGclause, if applicable.withParseDateFormat(String value) The date format to use when parsing functions whose behaviour depends on some session date format, such as NLS_DATE_FORMAT in OraclewithParseDialect(SQLDialect value) [#7337] The input dialect that should be chosen to disambiguate ambiguous SQL syntax.withParseIgnoreComments(Boolean value) [#8325] Whether the parser should ignore content between ignore comment tokens.[#8325] The ignore comment start tokenwithParseIgnoreCommentStop(String value) [#8325] The ignore comment stop token[#13109] Whether the parser of the jOOQ Open Source Edition should ignore commercial only features, rather than failing.withParseLocale(Locale value) The Locale to be used with any parser locale dependent logic, defaulting togetLocale().[#8469] Whether to parse default expressions retrieved fromDatabaseMetaData.withParseMetaViewSources(Boolean value) [#8469] Whether to parse view sources retrieved fromDatabaseMetaData.withParseNameCase(ParseNameCase value) [#7337] The default name case for parsed identifiers.withParseNamedParamPrefix(String value) The prefix to use for named parameters in parsed SQL.[#12538] Whether the parser should retain comments and whitespace between queries when parsing multiple queries throughParser.parse(String).withParseSearchPath(List<ParseSearchSchema> parseSearchPath) withParseSearchPath(ParseSearchSchema... values) withParseSetCommands(Boolean value) [#9780] Whether commands of the typeSET key = valueshould be parsed rather than ignored.withParseTimestampFormat(String value) The timestamp format to use when parsing functions whose behaviour depends on some session date format, such as NLS_TIMESTAMP_FORMAT in Oracle[#7344] Whether the parser should accept unknown functions.[#5917] Whether the parser should accept unsupported (but known) syntax.[#7163] Whether the parser should perform meta lookups in the Configuration's MetaProvider.withQueryPoolable(QueryPoolable value) The default JDBC poolable property that should be applied to all jOOQ queries, for which no specific poolable flag was specified.withQueryTimeout(Integer value) The default JDBC queryTimeout property that should be applied to all jOOQ queries, for which no specific queryTimeout was specified.[#9864] The behaviour when trying to insert into readonly columns usingTableRecord.insert().[#9864] The behaviour when trying to update a readonly column usingUpdatableRecord.update().The order of invocation for [action]end() methods registeredRecordListeners.The order of invocation for [action]start() methods registeredRecordListeners.withReflectionCaching(Boolean value) Whether reflection information should be cached in the configuration.withRenderCatalog(Boolean value) Whether any catalog name should be rendered at all.Whether stored function calls should be wrapped in scalar subqueries.Whether theNullability.DEFAULTnullablity should be rendered in generated DDL, and how it should be rendered.The token to place between the$$signs of a PostgreSQL dollar quoted string generated by jOOQ.withRenderFormatted(Boolean value) Whether rendered SQL should be pretty-printed.All sorts of formatting flags / settings.Whether the jOOQGROUP_CONCATfunction should be overflow-protected by setting the@@group_concat_max_lensession variable in MySQL style database systems.The join type to be generated by implicit joins for to-many paths inSelectqueries.The join type to be generated by implicit joins for to-one paths inSelectqueries.Whether to render an explicit windowRANGEclause when an implicit clause is applied.Whether the case ofKeywordreferences should be modified in any way.Deprecated.- 3.12.0 - [#5909] - UseRenderKeywordCaseinstead.withRenderLocale(Locale value) The Locale to be used with any render locale dependent logic (as e.g.withRenderMapping(RenderMapping value) Configure render mapping for runtime schema / table rewriting in generated SQL.withRenderNameCase(RenderNameCase value) Whether the case ofNamereferences should be modified in any way.withRenderNamedParamPrefix(String value) The prefix to use for named parameters in generated SQL.Deprecated.- 3.12.0 - [#5909] - UseRenderQuotedNamesandRenderNameCaseinstead.Whether to render the optionalASkeyword in table aliases, if it is optional in the output dialect.Whether to render the optionalASkeyword in table aliases, if it is optional in the output dialect.Whether to render optional parentheses to make associativity explicit, e.g.Whether to render the optionalINNERkeyword inINNER JOIN, if it is optional in the output dialect.Whether to render the optionalOUTERkeyword inOUTER JOIN, if it is optional in the output dialect.Whether an additionalORDER BY rnclause should be rendered on emulated paginated queries.Whether the jOOQRETURNINGclause should map to SQL Server'sOUTPUTclause.Whether queries combined with set operators (e.g.Whether plain SQL templates (SQL) are rendered as raw string content.Whether rendered schema, table, column names, etc should be quoted.Whether a redundant(a invalid input: '<'= :a)predicate should be rendered for a(a, b) invalid input: '<' (:a, :b)predicate for theSEEKclause.Whether a(a, b) invalid input: '<' (:a, :b)row predicate should be rendered for theSEEKclause.Whether stored function calls should be wrapped in scalar subqueries.withRenderSchema(Boolean value) Whether any schema name should be rendered at all.withRenderTable(RenderTable value) Whether any table name qualification should be rendered at all on columns.Whether emulations that require repeating expressions should render variables for those expressions in derived tables.Whether calls to store(), insert() and update() should return all columns, not just identity columns.Whether calls to store(), insert() and update() should return values for columns that areDataType.computed().Whether calls to store(), insert() and update() should return values for columns that areDataType.defaulted().Whether calls to store(), insert() and update() should return the identity column.withReturnRecordToPojo(Boolean value) Whether calls to store(), insert(), update(), and delete() that are called on an UpdatableRecord that is created from a POJO (e.g.withStatementType(StatementType value) The type of statement that is to be executed.A strategy defining how exceptions from the database / JDBC driver should be propagatedThe order of invocation for [action]end() methods registeredTransactionListeners.The order of invocation for [action]start() methods registeredTransactionListeners.Transform ANSI join to table lists if possible.TransformGROUP BY [column index]clauses by substituting the column index.Deprecated.- 3.18.0 - [#14634] - The configuration of this transformation is deprecated.TransformQOM.CompareConditionand a few other types of condition to inline their bind values, in case they matchTransform Common Table Expressions (CTE) by inlining theirWITHclause definition to wherever they're referenced.withTransformPatterns(Boolean value) Transform various syntax patterns to better versions, if possible.Transformx != c1 AND x != c2tox NOT IN (c1, c2).Transforma + 1 = 2toa = 2 - 1, and other transformations.Transform1 / y * xtox / y, and other transformations.Transform bitwise operations to an equivalentBIT_GET(a, b)expression.Transform~(bitnand(x, y))tobitand(x, y)and~(bitand(x, y)tobitnand(x, y).Transform~(bitnor(x, y))tobitor(x, y)and~(bitor(x, y)tobitnor(x, y).Transform~(~(x))tox.Transform~(bitxnor(x, y))tobitxor(x, y)and~(bitxor(x, y)tobitxnor(x, y).Transform bitwise operations to an equivalentBIT_SET(a, b)orBIT_SET(a, b, c)expression.TransformCASE WHEN a IS NOT DISTINCT FROM b …to an equivalentDECODEfunction.TransformCASE … ELSE NULLremoving theELSEclause.TransformCASE WHEN a THEN x WHEN b THEN y ELSE y ENDtoCASE WHEN a THEN x ELSE y END.TransformCASE WHEN a THEN x WHEN b THEN x ENDtoCASE WHEN a OR b THEN x END.Transform a searchedCASE WHEN x = ..TransformCASEexpressions to their respective abbreviations.TransformCOUNT(1)or any otherCOUNT(const)toCOUNT(*).Transforma IS [ NOT ] DISTINCT FROM NULLtoa IS [ NOT ] NULL.Transform empty scalar subqueries like(SELECT 1 WHERE FALSE)toNULL.TransformCASE … ELSE CASE …by flattening the nestedCASE.Flatten nestedCASEabbreviations such asNVLorCASE.Flatten nestedDECODEfunctions.Transform(EXP(x) - EXP(-x)) / 2toSINH(x), and other transformations.Transform all repetitions of idempotent functions, such asUPPER(UPPER(s))toUPPER(s).TransformLN(x + SQRT(SQUARE(x) + 1))toASINH(x), and other transformations.TransformLN(value) / LN(base)toLOG(base, value), and other transformations.Activate debug logging of thetransformPatternsfeature.Transformx >= a AND x invalid input: '<'= atox = a.Transformx BETWEEN a AND b OR x BETWEEN b AND atox BETWEEN SYMMETRIC a AND b.Transformx IN (a, b, c) AND x IN (b, c, d)tox IN (b, c).Transformx = a OR x > atox >= a.Transformx >= a AND x invalid input: '<'= btox BETWEEN a AND b.Transform-(-(x))toxTransform(a + b) + (c + d)to((a + b) + c) + d.Transform 2 argumentCOALESCE(a, b)toNVL(a, b).Transform1 = atoa = 1.Transformx IN (a)tox = aandx NOT IN (a)tox != a.TransformNOT(p AND q)toNOT(p) OR NOT(q).TransformNOT (a != b)toa = b, and similar comparisons.TransformNOT(NOT(x))tox.TransformNOT (a IS NOT DISTINCT FROM b)toa IS DISTINCT FROM b.TransformNOT(p OR q)toNOT(p) AND NOT(q).Any {org.jooq.impl.QOM.UReturnsNullOnNullInput} function or expression withNULLarguments can be replaced byNULL.Transformx = c1 OR x = c2tox IN (c1, c2).Transform predicates comparing scalar subqueries with a count(SELECT COUNT(*) …) > 0to equivalentEXISTS (SELECT 1 …).Transform predicates comparing scalar subqueries with a count(SELECT COUNT(expr) …) > 0to equivalentEXISTS (SELECT 1 … WHERE expr IS NOT NULL).Transform complex predicates into simplerCASEabbreviations.TransformSIN(x) / COS(x)toTAN(x), and other transformations.withTransformPatternsTrim(Boolean value) TransformLTRIM(RTRIM(x))orRTRIM(LTRIM(x))toTRIM(x).Transform trivial bitwise comparisons likeBIT_OR(a, 0)toa.Transform trivial case abbreviations likeNVL(NULL, a)toa.Transform trivial predicates like1 = 1toTRUE.TransformSELECT DISTINCT a, b FROM t GROUP BY a, btoSELECT a, b FROM t GROUP BY a, b.Transform[ NOT ] EXISTS (SELECT DISTINCT a, b FROM t ORDER BY c LIMIT d)to[ NOT ] EXISTS (SELECT 1 FROM t).TransformSELECT a, b FROM t GROUP BY a, a, btoSELECT a, b FROM t GROUP BY a, b.TransformSELECT * FROM t INNER JOIN u ON TRUEtoSELECT * FROM t CROSS JOIN u.TransformSELECT a, b FROM t ORDER BY a, a, btoSELECT a, b FROM t ORDER BY a, b.TransformSELECT (SELECT 1)toSELECT 1.TransformCASEby removing unreachable clauses.TransformDECODEby removing unreachable clauses.Transform theQUALIFYclause to an equivalent derived table to filter on window functions.TransformROWNUMexpressions to correspondingLIMITclauses orROW_NUMBER()expressions.Transform table lists to ANSI join if possible.Transform arithmetic expressions on literals and bind variables.withUpdatablePrimaryKeys(Boolean value) Whether primary key values are deemed to be "updatable" in jOOQ.withUpdateRecordTimestamp(Boolean value) Whether store(), insert(), and update() methods should update the record timestamp prior to the operation, for use withexecuteWithOptimisticLocking.withUpdateRecordVersion(Boolean value) Whether store(), insert(), and update() methods should update the record version prior to the operation, for use withexecuteWithOptimisticLocking.WhetherUpdatableRecord.update()calls should be executed if the record is unchanged.The order of invocation for [action]end() methods registeredVisitListeners.The order of invocation for [action]start() methods registeredVisitListeners.[#15286] The warning level when the deprecated static type registry was accessed by legacy code.
- 
Field Details- 
forceIntegerTypesOnZeroScaleDecimals
- 
renderCatalog
- 
renderSchema
- 
renderTable
- 
renderMapping
- 
renderQuotedNames
- 
renderNameCase
- 
renderNameStyle
- 
renderNamedParamPrefix
- 
renderKeywordCase
- 
renderKeywordStyle
- 
renderLocale
- 
renderFormatted
- 
renderFormatting
- 
renderOptionalAssociativityParentheses
- 
renderOptionalAsKeywordForTableAliases
- 
renderOptionalAsKeywordForFieldAliases
- 
renderOptionalInnerKeyword
- 
renderOptionalOuterKeyword
- 
renderImplicitWindowRange
- 
renderScalarSubqueriesForStoredFunctions
- 
renderImplicitJoinType
- 
renderImplicitJoinToManyType
- 
renderDefaultNullability
- 
renderCoalesceToEmptyStringInConcat
- 
renderOrderByRownumberForEmulatedPagination
- 
renderOutputForSQLServerReturningClause
- 
renderGroupConcatMaxLenSessionVariable
- 
renderParenthesisAroundSetOperationQueries
- 
renderVariablesInDerivedTablesForEmulations
- 
renderRowConditionForSeekClause
- 
renderRedundantConditionForSeekClause
- 
renderPlainSQLTemplatesAsRaw
- 
renderDollarQuotedStringToken
- 
namePathSeparator
- 
bindOffsetDateTimeType
- 
bindOffsetTimeType
- 
fetchTriggerValuesAfterSQLServerOutput
- 
fetchTriggerValuesAfterReturning
- 
fetchIntermediateResult
- 
diagnosticsDuplicateStatements
- 
diagnosticsDuplicateStatementsUsingTransformPatterns
- 
diagnosticsMissingWasNullCall
- 
diagnosticsRepeatedStatements
- 
diagnosticsConsecutiveAggregation
- 
diagnosticsConcatenationInPredicate
- 
diagnosticsPossiblyWrongExpression
- 
diagnosticsTooManyColumnsFetched
- 
diagnosticsTooManyRowsFetched
- 
diagnosticsUnnecessaryWasNullCall
- 
diagnosticsPatterns
- 
diagnosticsTrivialCondition
- 
diagnosticsNullCondition
- 
transformPatterns
- 
transformPatternsLogging
- 
transformPatternsUnnecessaryDistinct
- 
transformPatternsUnnecessaryScalarSubquery
- 
transformPatternsUnnecessaryInnerJoin
- 
transformPatternsUnnecessaryGroupByExpressions
- 
transformPatternsUnnecessaryOrderByExpressions
- 
transformPatternsUnnecessaryExistsSubqueryClauses
- 
transformPatternsCountConstant
- 
transformPatternsTrim
- 
transformPatternsNotAnd
- 
transformPatternsNotOr
- 
transformPatternsNotNot
- 
transformPatternsNotComparison
- 
transformPatternsNotNotDistinct
- 
transformPatternsDistinctFromNull
- 
transformPatternsNormaliseAssociativeOps
- 
transformPatternsNormaliseInListSingleElementToComparison
- 
transformPatternsNormaliseFieldCompareValue
- 
transformPatternsNormaliseCoalesceToNvl
- 
transformPatternsOrEqToIn
- 
transformPatternsAndNeToNotIn
- 
transformPatternsMergeOrComparison
- 
transformPatternsMergeAndComparison
- 
transformPatternsMergeInLists
- 
transformPatternsMergeRangePredicates
- 
transformPatternsMergeBetweenSymmetricPredicates
- 
transformPatternsCaseSearchedToCaseSimple
- 
transformPatternsCaseElseNull
- 
transformPatternsUnreachableCaseClauses
- 
transformPatternsUnreachableDecodeClauses
- 
transformPatternsCaseDistinctToDecode
- 
transformPatternsCaseMergeWhenWhen
- 
transformPatternsCaseMergeWhenElse
- 
transformPatternsCaseToCaseAbbreviation
- 
transformPatternsSimplifyCaseAbbreviation
- 
transformPatternsFlattenCaseAbbreviation
- 
transformPatternsFlattenDecode
- 
transformPatternsFlattenCase
- 
transformPatternsTrivialCaseAbbreviation
- 
transformPatternsTrivialPredicates
- 
transformPatternsTrivialBitwiseOperations
- 
transformPatternsBitSet
- 
transformPatternsBitGet
- 
transformPatternsScalarSubqueryCountAsteriskGtZero
- 
transformPatternsScalarSubqueryCountExpressionGtZero
- 
transformPatternsEmptyScalarSubquery
- 
transformPatternsNegNeg
- 
transformPatternsBitNotBitNot
- 
transformPatternsBitNotBitNand
- 
transformPatternsBitNotBitNor
- 
transformPatternsBitNotBitXNor
- 
transformPatternsNullOnNullInput
- 
transformPatternsIdempotentFunctionRepetition
- 
transformPatternsArithmeticComparisons
- 
transformPatternsArithmeticExpressions
- 
transformPatternsTrigonometricFunctions
- 
transformPatternsLogarithmicFunctions
- 
transformPatternsHyperbolicFunctions
- 
transformPatternsInverseHyperbolicFunctions
- 
transformInlineBindValuesForFieldComparisons
- 
transformAnsiJoinToTableLists
- 
transformInConditionSubqueryWithLimitToDerivedTable
- 
transformQualify
- 
transformTableListsToAnsiJoin
- 
transformRownum
- 
transformUnneededArithmeticExpressions
- 
transformGroupByColumnIndex
- 
transformInlineCTE
- 
backslashEscaping
- 
paramType
- 
paramCastMode
- 
statementType
- 
inlineThreshold
- 
transactionListenerStartInvocationOrder
- 
transactionListenerEndInvocationOrder
- 
migrationListenerStartInvocationOrder
- 
migrationListenerEndInvocationOrder
- 
visitListenerStartInvocationOrder
- 
visitListenerEndInvocationOrder
- 
recordListenerStartInvocationOrder
- 
recordListenerEndInvocationOrder
- 
executeListenerStartInvocationOrder
- 
executeListenerEndInvocationOrder
- 
executeLogging
- 
executeLoggingSQLExceptions
- 
diagnosticsLogging
- 
diagnosticsConnection
- 
updateRecordVersion
- 
updateRecordTimestamp
- 
executeWithOptimisticLocking
- 
executeWithOptimisticLockingExcludeUnversioned
- 
attachRecords
- 
insertUnchangedRecords
- 
updateUnchangedRecords
- 
updatablePrimaryKeys
- 
reflectionCaching
- 
cacheRecordMappers
- 
cacheParsingConnection
- 
cacheParsingConnectionLRUCacheSize
- 
cachePreparedStatementInLoader
- 
throwExceptions
- 
fetchWarnings
- 
fetchServerOutputSize
- 
returnIdentityOnUpdatableRecord
- 
returnDefaultOnUpdatableRecord
- 
returnComputedOnUpdatableRecord
- 
returnAllOnUpdatableRecord
- 
returnRecordToPojo
- 
mapJPAAnnotations
- 
mapRecordComponentParameterNames
- 
mapConstructorPropertiesParameterNames
- 
mapConstructorParameterNames
- 
mapConstructorParameterNamesInKotlin
- 
queryPoolable
- 
queryTimeout
- 
maxRows
- 
fetchSize
- 
batchSize
- 
debugInfoOnStackTrace
- 
inListPadding
- 
inListPadBase
- 
delimiter
- 
emulateOnDuplicateKeyUpdateOnPrimaryKeyOnly
- 
emulateMultiset
- 
emulateComputedColumns
- 
executeUpdateWithoutWhere
- 
executeDeleteWithoutWhere
- 
interpreterDialect
- 
interpreterNameLookupCaseSensitivity
- 
interpreterLocale
- 
interpreterDelayForeignKeyDeclarations
- 
metaIncludeSystemIndexes
- 
metaIncludeSystemSequences
- 
migrationHistorySchema
- 
migrationHistorySchemaCreateSchemaIfNotExists
- 
migrationDefaultSchema
- 
migrationSchemataCreateSchemaIfNotExists
- 
migrationAllowsUndo
- 
migrationRevertUntracked
- 
migrationAutoBaseline
- 
migrationAutoVerification
- 
migrationIgnoreDefaultTimestampPrecisionDiffs
- 
locale
- 
parseDialect
- 
parseLocale
- 
parseDateFormat
- 
parseTimestampFormat
- 
parseNamedParamPrefix
- 
parseNameCase
- 
parseWithMetaLookups
- 
parseAppendMissingTableReferences
- 
parseSetCommands
- 
parseUnsupportedSyntax
- 
parseUnknownFunctions
- 
parseIgnoreCommercialOnlyFeatures
- 
parseIgnoreComments
- 
parseIgnoreCommentStart
- 
parseIgnoreCommentStop
- 
parseRetainCommentsBetweenQueries
- 
parseMetaDefaultExpressions
- 
parseMetaViewSources
- 
readonlyTableRecordInsert
- 
readonlyUpdatableRecordUpdate
- 
readonlyInsert
- 
readonlyUpdate
- 
applyWorkaroundFor7962
- 
warnOnStaticTypeRegistryAccess
- 
interpreterSearchPath
- 
migrationSchemata
- 
parseSearchPath
 
- 
- 
Constructor Details- 
Settingspublic Settings()
 
- 
- 
Method Details- 
isForceIntegerTypesOnZeroScaleDecimalsHistorically, zero-scale decimal types are generated as their most appropriate, corresponding integer type (e.g. NUMBER(2, 0) and less: Byte). The same behaviour is replicated in theMetaAPI. This flag allows for turning off this feature.- Returns:
- possible object is
     Boolean
 
- 
setForceIntegerTypesOnZeroScaleDecimalsHistorically, zero-scale decimal types are generated as their most appropriate, corresponding integer type (e.g. NUMBER(2, 0) and less: Byte). The same behaviour is replicated in theMetaAPI. This flag allows for turning off this feature.- Parameters:
- value- allowed object is- Boolean
 
- 
isRenderCatalogWhether any catalog name should be rendered at all.Use this for single-catalog environments, or when all objects are made available using synonyms - Returns:
- possible object is
     Boolean
 
- 
setRenderCatalogWhether any catalog name should be rendered at all.Use this for single-catalog environments, or when all objects are made available using synonyms - Parameters:
- value- allowed object is- Boolean
 
- 
isRenderSchemaWhether any schema name should be rendered at all.Setting this to false also implicitly sets "renderCatalog" to false. Use this for single-schema environments, or when all objects are made available using synonyms - Returns:
- possible object is
     Boolean
 
- 
setRenderSchemaWhether any schema name should be rendered at all.Setting this to false also implicitly sets "renderCatalog" to false. Use this for single-schema environments, or when all objects are made available using synonyms - Parameters:
- value- allowed object is- Boolean
 
- 
getRenderTableWhether any table name qualification should be rendered at all on columns.Setting when tables aren't rendered, then implicitly, schemas and catalogs aren't rendered either. The following values are available: - RenderTable.ALWAYS: The default, which should always be preferred. Columns are always qualified with their tables, where possible.
- RenderTable.WHEN_MULTIPLE_TABLES: The simplest option to reduce generated query verbosity, avoiding table qualification only in queries with a single table in the- FROMclause.
- RenderTable.WHEN_AMBIGUOUS_COLUMNS: A much more expensive to compute option that checks the- FROMclause for ambiguous column names, in case of which columns are qualified.
- RenderTable.NEVER: Always turn off table qualification.
 Use this when verbosity of rendered SQL is a problem. 
- 
setRenderTableWhether any table name qualification should be rendered at all on columns.Setting when tables aren't rendered, then implicitly, schemas and catalogs aren't rendered either. The following values are available: - RenderTable.ALWAYS: The default, which should always be preferred. Columns are always qualified with their tables, where possible.
- RenderTable.WHEN_MULTIPLE_TABLES: The simplest option to reduce generated query verbosity, avoiding table qualification only in queries with a single table in the- FROMclause.
- RenderTable.WHEN_AMBIGUOUS_COLUMNS: A much more expensive to compute option that checks the- FROMclause for ambiguous column names, in case of which columns are qualified.
- RenderTable.NEVER: Always turn off table qualification.
 Use this when verbosity of rendered SQL is a problem. 
- 
getRenderMappingConfigure render mapping for runtime schema / table rewriting in generated SQL.
- 
setRenderMappingConfigure render mapping for runtime schema / table rewriting in generated SQL.
- 
getRenderQuotedNamesWhether rendered schema, table, column names, etc should be quoted.This only affects names created through DSL.name(String)methods (including those that are implicitly created through this method), notDSL.quotedName(String)orDSL.unquotedName(String), whose behaviour cannot be overridden.This setting does not affect any plain SQL usage. 
- 
setRenderQuotedNamesWhether rendered schema, table, column names, etc should be quoted.This only affects names created through DSL.name(String)methods (including those that are implicitly created through this method), notDSL.quotedName(String)orDSL.unquotedName(String), whose behaviour cannot be overridden.This setting does not affect any plain SQL usage. 
- 
getRenderNameCaseWhether the case ofNamereferences should be modified in any way.Names are modified irrespective of the getRenderQuotedNames()setting.This setting does not affect any plain SQL usage. 
- 
setRenderNameCaseWhether the case ofNamereferences should be modified in any way.Names are modified irrespective of the getRenderQuotedNames()setting.This setting does not affect any plain SQL usage. 
- 
getRenderNameStyleDeprecated.- 3.12.0 - [#5909] - UseRenderQuotedNamesandRenderNameCaseinstead.Whether rendered schema, table, column names, etc should be quoted in rendered SQL, or transformed in any other way.This is set to "QUOTED" by default for backwards-compatibility. 
- 
setRenderNameStyleDeprecated.- 3.12.0 - [#5909] - UseRenderQuotedNamesandRenderNameCaseinstead.Whether rendered schema, table, column names, etc should be quoted in rendered SQL, or transformed in any other way.This is set to "QUOTED" by default for backwards-compatibility. 
- 
getRenderNamedParamPrefixThe prefix to use for named parameters in generated SQL.Named parameter syntax defaults to :name(such as supported by Oracle, JPA, Spring), but vendor specific parameters may look differently. This flag can be used to determine the prefix to be used by named parameters, such as@for SQL Server's@nameor$for PostgreSQL's$name, when generating SQL."Named indexed" parameters can be obtained in the same way by specifingy ParamType#NAMEDand not providing a name to parameters, resulting in:1or@1or$1, etc.
- 
setRenderNamedParamPrefixThe prefix to use for named parameters in generated SQL.Named parameter syntax defaults to :name(such as supported by Oracle, JPA, Spring), but vendor specific parameters may look differently. This flag can be used to determine the prefix to be used by named parameters, such as@for SQL Server's@nameor$for PostgreSQL's$name, when generating SQL."Named indexed" parameters can be obtained in the same way by specifingy ParamType#NAMEDand not providing a name to parameters, resulting in:1or@1or$1, etc.
- 
getRenderKeywordCaseWhether the case ofKeywordreferences should be modified in any way.
- 
setRenderKeywordCaseWhether the case ofKeywordreferences should be modified in any way.
- 
getRenderKeywordStyleDeprecated.- 3.12.0 - [#5909] - UseRenderKeywordCaseinstead.Whether the case ofKeywordreferences should be modified in any way.
- 
setRenderKeywordStyleDeprecated.- 3.12.0 - [#5909] - UseRenderKeywordCaseinstead.Whether the case ofKeywordreferences should be modified in any way.
- 
getRenderLocaleThe Locale to be used with any render locale dependent logic (as e.g. transforming names to lower / uppper case), defaulting togetLocale().
- 
setRenderLocaleThe Locale to be used with any render locale dependent logic (as e.g. transforming names to lower / uppper case), defaulting togetLocale().
- 
isRenderFormattedWhether rendered SQL should be pretty-printed.- Returns:
- possible object is
     Boolean
 
- 
setRenderFormattedWhether rendered SQL should be pretty-printed.- Parameters:
- value- allowed object is- Boolean
 
- 
getRenderFormattingAll sorts of formatting flags / settings.
- 
setRenderFormattingAll sorts of formatting flags / settings.
- 
getRenderOptionalAssociativityParenthesesWhether to render optional parentheses to make associativity explicit, e.g.((a + b) + c)instead of (a + b + c).
- 
setRenderOptionalAssociativityParenthesesWhether to render optional parentheses to make associativity explicit, e.g.((a + b) + c)instead of (a + b + c).
- 
getRenderOptionalAsKeywordForTableAliasesWhether to render the optionalASkeyword in table aliases, if it is optional in the output dialect. This is ignored if the keyword is not supported (e.g. in Oracle)
- 
setRenderOptionalAsKeywordForTableAliasesWhether to render the optionalASkeyword in table aliases, if it is optional in the output dialect. This is ignored if the keyword is not supported (e.g. in Oracle)
- 
getRenderOptionalAsKeywordForFieldAliasesWhether to render the optionalASkeyword in table aliases, if it is optional in the output dialect.
- 
setRenderOptionalAsKeywordForFieldAliasesWhether to render the optionalASkeyword in table aliases, if it is optional in the output dialect.
- 
getRenderOptionalInnerKeywordWhether to render the optionalINNERkeyword inINNER JOIN, if it is optional in the output dialect.
- 
setRenderOptionalInnerKeywordWhether to render the optionalINNERkeyword inINNER JOIN, if it is optional in the output dialect.
- 
getRenderOptionalOuterKeywordWhether to render the optionalOUTERkeyword inOUTER JOIN, if it is optional in the output dialect.
- 
setRenderOptionalOuterKeywordWhether to render the optionalOUTERkeyword inOUTER JOIN, if it is optional in the output dialect.
- 
getRenderImplicitWindowRangeWhether to render an explicit windowRANGEclause when an implicit clause is applied.
- 
setRenderImplicitWindowRangeWhether to render an explicit windowRANGEclause when an implicit clause is applied.
- 
isRenderScalarSubqueriesForStoredFunctionsWhether stored function calls should be wrapped in scalar subqueries.Oracle 11g (and potentially, other databases too) implements scalar subquery caching. With this flag set to true, users can automatically profit from this feature in all SQL statements. - Returns:
- possible object is
     Boolean
 
- 
setRenderScalarSubqueriesForStoredFunctionsWhether stored function calls should be wrapped in scalar subqueries.Oracle 11g (and potentially, other databases too) implements scalar subquery caching. With this flag set to true, users can automatically profit from this feature in all SQL statements. - Parameters:
- value- allowed object is- Boolean
 
- 
getRenderImplicitJoinTypeThe join type to be generated by implicit joins for to-one paths inSelectqueries.The DEFAULTis dependent on the nullability of the foreign key (LEFT_JOINfor nullable foreign keys andINNER_JOINfor non-nullable foreign keys). In DML statements, it is alwaysSCALAR_SUBQUERY, unless DML joins are supported.
- 
setRenderImplicitJoinTypeThe join type to be generated by implicit joins for to-one paths inSelectqueries.The DEFAULTis dependent on the nullability of the foreign key (LEFT_JOINfor nullable foreign keys andINNER_JOINfor non-nullable foreign keys). In DML statements, it is alwaysSCALAR_SUBQUERY, unless DML joins are supported.
- 
getRenderImplicitJoinToManyTypeThe join type to be generated by implicit joins for to-many paths inSelectqueries.The DEFAULTisSCALAR_SUBQUERYif the join path is implicit only, i.e. absent from theFROMclause, to prevent accidental cartesian products, orLEFT_JOINif declared explicitly in theFROMclause. In DML statements, it is alwaysSCALAR_SUBQUERY, unless DML joins are supported.
- 
setRenderImplicitJoinToManyTypeThe join type to be generated by implicit joins for to-many paths inSelectqueries.The DEFAULTisSCALAR_SUBQUERYif the join path is implicit only, i.e. absent from theFROMclause, to prevent accidental cartesian products, orLEFT_JOINif declared explicitly in theFROMclause. In DML statements, it is alwaysSCALAR_SUBQUERY, unless DML joins are supported.
- 
getRenderDefaultNullabilityWhether theNullability.DEFAULTnullablity should be rendered in generated DDL, and how it should be rendered.
- 
setRenderDefaultNullabilityWhether theNullability.DEFAULTnullablity should be rendered in generated DDL, and how it should be rendered.
- 
isRenderCoalesceToEmptyStringInConcatWhether stored function calls should be wrapped in scalar subqueries.Oracle 11g (and potentially, other databases too) implements scalar subquery caching. With this flag set to true, users can automatically profit from this feature in all SQL statements. This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setRenderCoalesceToEmptyStringInConcatWhether stored function calls should be wrapped in scalar subqueries.Oracle 11g (and potentially, other databases too) implements scalar subquery caching. With this flag set to true, users can automatically profit from this feature in all SQL statements. This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isRenderOrderByRownumberForEmulatedPaginationWhether an additionalORDER BY rnclause should be rendered on emulated paginated queries.Older databases did not support OFFSET .. FETCH pagination, so jOOQ emulates it using derived tables and ROWNUM(Oracle 11g and older) orROW_NUMBER()(e.g. DB2, SQL Server, etc.) filtering. While these subqueries are ordered, the ordering is not guaranteed to be stable in the outer most queries. It may be stable (and e.g. in Oracle, it mostly is, if queries are not parallel, or joined to other queries, etc.), so the excessORDER BYclause may add some additional performance overhead. This setting forces jOOQ to not generate the additionalORDER BYclause.For details, see https://github.com/jOOQ/jOOQ/issues/7609. - Returns:
- possible object is
     Boolean
 
- 
setRenderOrderByRownumberForEmulatedPaginationWhether an additionalORDER BY rnclause should be rendered on emulated paginated queries.Older databases did not support OFFSET .. FETCH pagination, so jOOQ emulates it using derived tables and ROWNUM(Oracle 11g and older) orROW_NUMBER()(e.g. DB2, SQL Server, etc.) filtering. While these subqueries are ordered, the ordering is not guaranteed to be stable in the outer most queries. It may be stable (and e.g. in Oracle, it mostly is, if queries are not parallel, or joined to other queries, etc.), so the excessORDER BYclause may add some additional performance overhead. This setting forces jOOQ to not generate the additionalORDER BYclause.For details, see https://github.com/jOOQ/jOOQ/issues/7609. - Parameters:
- value- allowed object is- Boolean
 
- 
isRenderOutputForSQLServerReturningClauseWhether the jOOQRETURNINGclause should map to SQL Server'sOUTPUTclause.SQL Server supports an OUTPUTclause in most DML statements, whose behaviour is almost identical toRETURNINGin Firebird, Oracle, PostgreSQL. Users who want to prevent jOOQ from rendering thisOUTPUTclause can deactivate this flag to revert to jOOQ callingjava.sql.Statement#getGeneratedKeys()instead, which is only supported for single row inserts.This OUTPUTclause does not support fetching trigger generated values. In order to fetch trigger generated values,fetchTriggerValuesAfterReturningneeds to be enabled as well.For details, see https://github.com/jOOQ/jOOQ/issues/4498. - Returns:
- possible object is
     Boolean
 
- 
setRenderOutputForSQLServerReturningClauseWhether the jOOQRETURNINGclause should map to SQL Server'sOUTPUTclause.SQL Server supports an OUTPUTclause in most DML statements, whose behaviour is almost identical toRETURNINGin Firebird, Oracle, PostgreSQL. Users who want to prevent jOOQ from rendering thisOUTPUTclause can deactivate this flag to revert to jOOQ callingjava.sql.Statement#getGeneratedKeys()instead, which is only supported for single row inserts.This OUTPUTclause does not support fetching trigger generated values. In order to fetch trigger generated values,fetchTriggerValuesAfterReturningneeds to be enabled as well.For details, see https://github.com/jOOQ/jOOQ/issues/4498. - Parameters:
- value- allowed object is- Boolean
 
- 
isRenderGroupConcatMaxLenSessionVariableWhether the jOOQGROUP_CONCATfunction should be overflow-protected by setting the@@group_concat_max_lensession variable in MySQL style database systems.MySQL truncates GROUP_CONCATresults after a certain length, which may be way too small for jOOQ's usage, especially when using theMULTISETemulation. By default, jOOQ sets a session variable to the highest possible value prior to executing a query containingGROUP_CONCAT. This flag can be used to opt out of this.For details, see https://github.com/jOOQ/jOOQ/issues/12092. - Returns:
- possible object is
     Boolean
 
- 
setRenderGroupConcatMaxLenSessionVariableWhether the jOOQGROUP_CONCATfunction should be overflow-protected by setting the@@group_concat_max_lensession variable in MySQL style database systems.MySQL truncates GROUP_CONCATresults after a certain length, which may be way too small for jOOQ's usage, especially when using theMULTISETemulation. By default, jOOQ sets a session variable to the highest possible value prior to executing a query containingGROUP_CONCAT. This flag can be used to opt out of this.For details, see https://github.com/jOOQ/jOOQ/issues/12092. - Parameters:
- value- allowed object is- Boolean
 
- 
isRenderParenthesisAroundSetOperationQueriesWhether queries combined with set operators (e.g. UNION and UNION ALL) should always be surrounded by a parenthesis pair.By default (i.e. when this setting is set to falsejOOQ will only render parenthesis pairs around queries combined with set operators when required. This is for example the case when set operators are nested, when non-associative operators like EXCEPT are used, or when the queries are rendered as derived tables.When this setting is set to truethe queries combined with set operators will always be surrounded by a parenthesis pair.For details, see https://github.com/jOOQ/jOOQ/issues/3676 and https://github.com/jOOQ/jOOQ/issues/9751. - Returns:
- possible object is
     Boolean
 
- 
setRenderParenthesisAroundSetOperationQueriesWhether queries combined with set operators (e.g. UNION and UNION ALL) should always be surrounded by a parenthesis pair.By default (i.e. when this setting is set to falsejOOQ will only render parenthesis pairs around queries combined with set operators when required. This is for example the case when set operators are nested, when non-associative operators like EXCEPT are used, or when the queries are rendered as derived tables.When this setting is set to truethe queries combined with set operators will always be surrounded by a parenthesis pair.For details, see https://github.com/jOOQ/jOOQ/issues/3676 and https://github.com/jOOQ/jOOQ/issues/9751. - Parameters:
- value- allowed object is- Boolean
 
- 
isRenderVariablesInDerivedTablesForEmulationsWhether emulations that require repeating expressions should render variables for those expressions in derived tables.For details, see https://github.com/jOOQ/jOOQ/issues/14065. - Returns:
- possible object is
     Boolean
 
- 
setRenderVariablesInDerivedTablesForEmulationsWhether emulations that require repeating expressions should render variables for those expressions in derived tables.For details, see https://github.com/jOOQ/jOOQ/issues/14065. - Parameters:
- value- allowed object is- Boolean
 
- 
isRenderRowConditionForSeekClauseWhether a(a, b) invalid input: '<' (:a, :b)row predicate should be rendered for theSEEKclause.Some RDBMS may support (a, b) invalid input: '<' (:a, :b)row predicate syntax, which is very convenient forSEEKclause implementations, but fail to optimise this predicate as could be expected. This flag allows for expanding the predicate to the much more verbose, but equivalent(a invalid input: '<' :a) OR (a = :a AND b invalid input: '<' :b). Dialects without native support for row predicates aren't affected by this flag.- Returns:
- possible object is
     Boolean
 
- 
setRenderRowConditionForSeekClauseWhether a(a, b) invalid input: '<' (:a, :b)row predicate should be rendered for theSEEKclause.Some RDBMS may support (a, b) invalid input: '<' (:a, :b)row predicate syntax, which is very convenient forSEEKclause implementations, but fail to optimise this predicate as could be expected. This flag allows for expanding the predicate to the much more verbose, but equivalent(a invalid input: '<' :a) OR (a = :a AND b invalid input: '<' :b). Dialects without native support for row predicates aren't affected by this flag.- Parameters:
- value- allowed object is- Boolean
 
- 
isRenderRedundantConditionForSeekClauseWhether a redundant(a invalid input: '<'= :a)predicate should be rendered for a(a, b) invalid input: '<' (:a, :b)predicate for theSEEKclause.Some RDBMS may not be able to properly optimise (a, b) invalid input: '<' ('a', 'b')or(a invalid input: '<' 'a') OR (a = 'a' AND b invalid input: '<' 'b'), and choose an appropriate index. By adding an additional redundant predicate, jOOQ may help the optimiser, e.g.(a invalid input: '<'= :a) AND (a, b) invalid input: '<' ('a', 'b')or(a invalid input: '<'= :a) AND ((a invalid input: '<' 'a') OR (a = 'a' AND b invalid input: '<' 'b'))- Returns:
- possible object is
     Boolean
 
- 
setRenderRedundantConditionForSeekClauseWhether a redundant(a invalid input: '<'= :a)predicate should be rendered for a(a, b) invalid input: '<' (:a, :b)predicate for theSEEKclause.Some RDBMS may not be able to properly optimise (a, b) invalid input: '<' ('a', 'b')or(a invalid input: '<' 'a') OR (a = 'a' AND b invalid input: '<' 'b'), and choose an appropriate index. By adding an additional redundant predicate, jOOQ may help the optimiser, e.g.(a invalid input: '<'= :a) AND (a, b) invalid input: '<' ('a', 'b')or(a invalid input: '<'= :a) AND ((a invalid input: '<' 'a') OR (a = 'a' AND b invalid input: '<' 'b'))- Parameters:
- value- allowed object is- Boolean
 
- 
isRenderPlainSQLTemplatesAsRawWhether plain SQL templates (SQL) are rendered as raw string content.- Returns:
- possible object is
     Boolean
 
- 
setRenderPlainSQLTemplatesAsRawWhether plain SQL templates (SQL) are rendered as raw string content.- Parameters:
- value- allowed object is- Boolean
 
- 
getRenderDollarQuotedStringTokenThe token to place between the$$signs of a PostgreSQL dollar quoted string generated by jOOQ.
- 
setRenderDollarQuotedStringTokenThe token to place between the$$signs of a PostgreSQL dollar quoted string generated by jOOQ.
- 
getNamePathSeparatorThe character(s) to be used as a separator in paths encoded in ainvalid @linkNameA few hierarchical mapping features work with paths encoded in names (specifically field aliases), such as the reflective mapping of nested values when aliasing fields as: SELECT a.first_name AS "book.author.firstName" a.last_name AS "book.author.lastName" FROM ...Not all dialects support "." in identifiers. This setting allows for specifying an alternative String to use as separator, e.g. "__". 
- 
setNamePathSeparatorThe character(s) to be used as a separator in paths encoded in ainvalid @linkNameA few hierarchical mapping features work with paths encoded in names (specifically field aliases), such as the reflective mapping of nested values when aliasing fields as: SELECT a.first_name AS "book.author.firstName" a.last_name AS "book.author.lastName" FROM ...Not all dialects support "." in identifiers. This setting allows for specifying an alternative String to use as separator, e.g. "__". 
- 
isBindOffsetDateTimeTypeWhether thejava.time(JSR 310) typeOffsetDateTimeshould be bound natively to JDBC.Historically, jOOQ encoded the java.timetypes as strings to offer better compatibility with older JDBC drivers. By now, most drivers should support thejava.timetypes. Using them may produce better performance both on the server and on the client side.This flag allows for reverting to pre-jOOQ 3.14 behaviour, where the default is to bind these types natively. For details, see https://github.com/jOOQ/jOOQ/issues/9902. - Returns:
- possible object is
     Boolean
 
- 
setBindOffsetDateTimeTypeWhether thejava.time(JSR 310) typeOffsetDateTimeshould be bound natively to JDBC.Historically, jOOQ encoded the java.timetypes as strings to offer better compatibility with older JDBC drivers. By now, most drivers should support thejava.timetypes. Using them may produce better performance both on the server and on the client side.This flag allows for reverting to pre-jOOQ 3.14 behaviour, where the default is to bind these types natively. For details, see https://github.com/jOOQ/jOOQ/issues/9902. - Parameters:
- value- allowed object is- Boolean
 
- 
isBindOffsetTimeTypeWhether thejava.time(JSR 310) typeOffsetTimeshould be bound natively to JDBC.Historically, jOOQ encoded the java.timetypes as strings to offer better compatibility with older JDBC drivers. By now, most drivers should support thejava.timetypes. Using them may produce better performance both on the server and on the client side.This flag allows for reverting to pre-jOOQ 3.14 behaviour, where the default is to bind these types natively. For details, see https://github.com/jOOQ/jOOQ/issues/9902. - Returns:
- possible object is
     Boolean
 
- 
setBindOffsetTimeTypeWhether thejava.time(JSR 310) typeOffsetTimeshould be bound natively to JDBC.Historically, jOOQ encoded the java.timetypes as strings to offer better compatibility with older JDBC drivers. By now, most drivers should support thejava.timetypes. Using them may produce better performance both on the server and on the client side.This flag allows for reverting to pre-jOOQ 3.14 behaviour, where the default is to bind these types natively. For details, see https://github.com/jOOQ/jOOQ/issues/9902. - Parameters:
- value- allowed object is- Boolean
 
- 
isFetchTriggerValuesAfterSQLServerOutputDeprecated.- 3.18.0 - [#13912] [#15316] - UsefetchTriggerValuesAfterReturninginstead.Fetch trigger values after SQL ServerOUTPUTclause.SQL Server OUTPUTstatements do not support fetching trigger generated values. This is a limitation of therenderOutputForSQLServerReturningClause. An additionalMERGEstatement can run a second query if (and only if) the primary key has been included in theOUTPUTclause.For details, see https://github.com/jOOQ/jOOQ/issues/4498. - Returns:
- possible object is
     Boolean
 
- 
setFetchTriggerValuesAfterSQLServerOutputDeprecated.- 3.18.0 - [#13912] [#15316] - UsefetchTriggerValuesAfterReturninginstead.Fetch trigger values after SQL ServerOUTPUTclause.SQL Server OUTPUTstatements do not support fetching trigger generated values. This is a limitation of therenderOutputForSQLServerReturningClause. An additionalMERGEstatement can run a second query if (and only if) the primary key has been included in theOUTPUTclause.For details, see https://github.com/jOOQ/jOOQ/issues/4498. - Parameters:
- value- allowed object is- Boolean
 
- 
getFetchTriggerValuesAfterReturningFetch trigger values after aRETURNINGclause in dialects that don't have native support for this.SQL Server OUTPUTclauses do not support fetching trigger generated values. Neither do SQLiteRETURNINGclauses. An additionalMERGEstatement can run a second query if (and only if) the primary key has been included in theOUTPUTclause.Trigger meta data is only available in jOOQ's commercial editions. If setting this flag to WHEN_NEEDEDin the jOOQ Open Source Edition, jOOQ will assume triggers are present.For details, see https://github.com/jOOQ/jOOQ/issues/4498. 
- 
setFetchTriggerValuesAfterReturningFetch trigger values after aRETURNINGclause in dialects that don't have native support for this.SQL Server OUTPUTclauses do not support fetching trigger generated values. Neither do SQLiteRETURNINGclauses. An additionalMERGEstatement can run a second query if (and only if) the primary key has been included in theOUTPUTclause.Trigger meta data is only available in jOOQ's commercial editions. If setting this flag to WHEN_NEEDEDin the jOOQ Open Source Edition, jOOQ will assume triggers are present.For details, see https://github.com/jOOQ/jOOQ/issues/4498. 
- 
getFetchIntermediateResultWhether to fetch data into intermediateResultinstances.By default, a ResultQueryproduces no intermediateResultinstances if they are not explicitly requested by the caller, e.g. by callingResultQuery.fetch(), or in the presence ofExecuteListenerinstances, which may require access toExecuteContext.result(). This default behaviour helps avoid unnecessary allocations of possibly large data structures.Using this flag, fetching of intermediate results can be turned off even when execute listeners are present, or turned on even if they're absent. 
- 
setFetchIntermediateResultWhether to fetch data into intermediateResultinstances.By default, a ResultQueryproduces no intermediateResultinstances if they are not explicitly requested by the caller, e.g. by callingResultQuery.fetch(), or in the presence ofExecuteListenerinstances, which may require access toExecuteContext.result(). This default behaviour helps avoid unnecessary allocations of possibly large data structures.Using this flag, fetching of intermediate results can be turned off even when execute listeners are present, or turned on even if they're absent. 
- 
isDiagnosticsDuplicateStatementsWhether to run theDiagnosticsListener.duplicateStatements(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.- Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsDuplicateStatementsWhether to run theDiagnosticsListener.duplicateStatements(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.- Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsDuplicateStatementsUsingTransformPatternsWhether to run theDiagnosticsListener.duplicateStatements(org.jooq.DiagnosticsContext)diagnostic with thetransformPatternsfeature activated.When transforming patterns, many more complex, duplicate SQL statements can be recognised than if simply parsing and re-rendering the statement. This flag turns on all transformation patterns, independently of their individual settings. Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsDuplicateStatementsUsingTransformPatternsWhether to run theDiagnosticsListener.duplicateStatements(org.jooq.DiagnosticsContext)diagnostic with thetransformPatternsfeature activated.When transforming patterns, many more complex, duplicate SQL statements can be recognised than if simply parsing and re-rendering the statement. This flag turns on all transformation patterns, independently of their individual settings. Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsMissingWasNullCallWhether to run theDiagnosticsListener.missingWasNullCall(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.- Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsMissingWasNullCallWhether to run theDiagnosticsListener.missingWasNullCall(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.- Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsRepeatedStatementsWhether to run theDiagnosticsListener.repeatedStatements(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.- Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsRepeatedStatementsWhether to run theDiagnosticsListener.repeatedStatements(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.- Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsConsecutiveAggregationWhether to run theDiagnosticsListener.consecutiveAggregation(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsConsecutiveAggregationWhether to run theDiagnosticsListener.consecutiveAggregation(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsConcatenationInPredicateWhether to run theDiagnosticsListener.concatenationInPredicate(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsConcatenationInPredicateWhether to run theDiagnosticsListener.concatenationInPredicate(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsPossiblyWrongExpressionWhether to run theDiagnosticsListener.possiblyWrongExpression(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsPossiblyWrongExpressionWhether to run theDiagnosticsListener.possiblyWrongExpression(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsTooManyColumnsFetchedWhether to run theDiagnosticsListener.tooManyColumnsFetched(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.- Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsTooManyColumnsFetchedWhether to run theDiagnosticsListener.tooManyColumnsFetched(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.- Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsTooManyRowsFetchedWhether to run theDiagnosticsListener.tooManyRowsFetched(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.- Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsTooManyRowsFetchedWhether to run theDiagnosticsListener.tooManyRowsFetched(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.- Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsUnnecessaryWasNullCallWhether to run theDiagnosticsListener.unnecessaryWasNullCall(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.- Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsUnnecessaryWasNullCallWhether to run theDiagnosticsListener.unnecessaryWasNullCall(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.- Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsPatternsWhether to run the various pattern transformation diagnostics.transformPatternsallows for applying numerous pattern transformations, which can be turned on separately when running diagnostics. This flag overrides thetransformPatternsflag in the diagnostics context. Individual pattern flags still allow to enable / disable the pattern for diagnostics.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsPatternsWhether to run the various pattern transformation diagnostics.transformPatternsallows for applying numerous pattern transformations, which can be turned on separately when running diagnostics. This flag overrides thetransformPatternsflag in the diagnostics context. Individual pattern flags still allow to enable / disable the pattern for diagnostics.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsTrivialConditionWhether to run theDiagnosticsListener.trivialCondition(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsTrivialConditionWhether to run theDiagnosticsListener.trivialCondition(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsNullConditionWhether to run thediagnostic.invalid @linkorg.jooq.DiagnosticsListener#nullConditoin(org.jooq.DiagnosticsContext)Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsNullConditionWhether to run thediagnostic.invalid @linkorg.jooq.DiagnosticsListener#nullConditoin(org.jooq.DiagnosticsContext)Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsTransform various syntax patterns to better versions, if possible.This flag enables the pattern transformation feature, which consists of several sub-flags that are all prefixed with "transformPatterns", e.g. transformPatternsTrim. While the sub-flags default to being enabled, and can be disabled on an individual basis, the global feature itself is disabled by default.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsTransform various syntax patterns to better versions, if possible.This flag enables the pattern transformation feature, which consists of several sub-flags that are all prefixed with "transformPatterns", e.g. transformPatternsTrim. While the sub-flags default to being enabled, and can be disabled on an individual basis, the global feature itself is disabled by default.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsLoggingActivate debug logging of thetransformPatternsfeature.- Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsLoggingActivate debug logging of thetransformPatternsfeature.- Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsUnnecessaryDistinctTransformSELECT DISTINCT a, b FROM t GROUP BY a, btoSELECT a, b FROM t GROUP BY a, b.The GROUP BYclause already removes duplicates, so if theDISTINCTclause contains at least all the columns fromGROUP BYthen it can be removed.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsUnnecessaryDistinctTransformSELECT DISTINCT a, b FROM t GROUP BY a, btoSELECT a, b FROM t GROUP BY a, b.The GROUP BYclause already removes duplicates, so if theDISTINCTclause contains at least all the columns fromGROUP BYthen it can be removed.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsUnnecessaryScalarSubqueryTransformSELECT (SELECT 1)toSELECT 1.Scalar subqueries that don't have any content other than a SELECTclause are unnecessary and can be removed.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsUnnecessaryScalarSubqueryTransformSELECT (SELECT 1)toSELECT 1.Scalar subqueries that don't have any content other than a SELECTclause are unnecessary and can be removed.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsUnnecessaryInnerJoinTransformSELECT * FROM t INNER JOIN u ON TRUEtoSELECT * FROM t CROSS JOIN u.Some INNER JOINexpressions can be proven to be unnecessary.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsUnnecessaryInnerJoinTransformSELECT * FROM t INNER JOIN u ON TRUEtoSELECT * FROM t CROSS JOIN u.Some INNER JOINexpressions can be proven to be unnecessary.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsUnnecessaryGroupByExpressionsTransformSELECT a, b FROM t GROUP BY a, a, btoSELECT a, b FROM t GROUP BY a, b.Duplicate GROUP BYexpressions can be removed.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsUnnecessaryGroupByExpressionsTransformSELECT a, b FROM t GROUP BY a, a, btoSELECT a, b FROM t GROUP BY a, b.Duplicate GROUP BYexpressions can be removed.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsUnnecessaryOrderByExpressionsTransformSELECT a, b FROM t ORDER BY a, a, btoSELECT a, b FROM t ORDER BY a, b.Duplicate ORDER BYexpressions can be removed.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsUnnecessaryOrderByExpressionsTransformSELECT a, b FROM t ORDER BY a, a, btoSELECT a, b FROM t ORDER BY a, b.Duplicate ORDER BYexpressions can be removed.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsUnnecessaryExistsSubqueryClausesTransform[ NOT ] EXISTS (SELECT DISTINCT a, b FROM t ORDER BY c LIMIT d)to[ NOT ] EXISTS (SELECT 1 FROM t).In EXISTSsubqueries, quite a fewSELECTclauses are meaningless, and can thus be removed. These include:- SELECT(any projection can be ignored)
- DISTINCT
- ORDER BY
- LIMIT(except- LIMIT 0, in case of which- transformPatternsTrivialPredicatesapplies).
 To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsUnnecessaryExistsSubqueryClausesTransform[ NOT ] EXISTS (SELECT DISTINCT a, b FROM t ORDER BY c LIMIT d)to[ NOT ] EXISTS (SELECT 1 FROM t).In EXISTSsubqueries, quite a fewSELECTclauses are meaningless, and can thus be removed. These include:- SELECT(any projection can be ignored)
- DISTINCT
- ORDER BY
- LIMIT(except- LIMIT 0, in case of which- transformPatternsTrivialPredicatesapplies).
 To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsCountConstantTransformCOUNT(1)or any otherCOUNT(const)toCOUNT(*).There is no benefit to counting a constant expression. In fact, in some RDBMS, it might even be slightly slower, at least in benchmarks. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsCountConstantTransformCOUNT(1)or any otherCOUNT(const)toCOUNT(*).There is no benefit to counting a constant expression. In fact, in some RDBMS, it might even be slightly slower, at least in benchmarks. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsTrimTransformLTRIM(RTRIM(x))orRTRIM(LTRIM(x))toTRIM(x).Historically, a few dialects did not implement TRIM(x)orTRIM(BOTH FROM x), so users worked around this by wrappingLTRIM()andRTRIM()with each other. Maintaining this is usually undesirable, so this transformation helps remove the unwanted wrapping.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsTrimTransformLTRIM(RTRIM(x))orRTRIM(LTRIM(x))toTRIM(x).Historically, a few dialects did not implement TRIM(x)orTRIM(BOTH FROM x), so users worked around this by wrappingLTRIM()andRTRIM()with each other. Maintaining this is usually undesirable, so this transformation helps remove the unwanted wrapping.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsNotAndTransformNOT(p AND q)toNOT(p) OR NOT(q).This transformation normalises a predicate using De Morgan's rules. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsNotAndTransformNOT(p AND q)toNOT(p) OR NOT(q).This transformation normalises a predicate using De Morgan's rules. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsNotOrTransformNOT(p OR q)toNOT(p) AND NOT(q).This transformation normalises a predicate using De Morgan's rules. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsNotOrTransformNOT(p OR q)toNOT(p) AND NOT(q).This transformation normalises a predicate using De Morgan's rules. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsNotNotTransformNOT(NOT(x))tox.This transformation removes a redundant logic negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsNotNotTransformNOT(NOT(x))tox.This transformation removes a redundant logic negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsNotComparisonTransformNOT (a != b)toa = b, and similar comparisons.This transformation removes a redundant logical negation from the DISTINCTpredicate.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsNotComparisonTransformNOT (a != b)toa = b, and similar comparisons.This transformation removes a redundant logical negation from the DISTINCTpredicate.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsNotNotDistinctTransformNOT (a IS NOT DISTINCT FROM b)toa IS DISTINCT FROM b.This transformation removes a redundant logical negation from the DISTINCTpredicate.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsNotNotDistinctTransformNOT (a IS NOT DISTINCT FROM b)toa IS DISTINCT FROM b.This transformation removes a redundant logical negation from the DISTINCTpredicate.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsDistinctFromNullTransforma IS [ NOT ] DISTINCT FROM NULLtoa IS [ NOT ] NULL.This simplifies the much more verbose DISTINCTpredicate.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsDistinctFromNullTransforma IS [ NOT ] DISTINCT FROM NULLtoa IS [ NOT ] NULL.This simplifies the much more verbose DISTINCTpredicate.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsNormaliseAssociativeOpsTransform(a + b) + (c + d)to((a + b) + c) + d.This transformation turns trees into lists, which greatly simplifies other tree traversal transformations. Some of those other transformations currently rely on this flag to be active. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsNormaliseAssociativeOpsTransform(a + b) + (c + d)to((a + b) + c) + d.This transformation turns trees into lists, which greatly simplifies other tree traversal transformations. Some of those other transformations currently rely on this flag to be active. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsNormaliseInListSingleElementToComparisonTransformx IN (a)tox = aandx NOT IN (a)tox != a.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsNormaliseInListSingleElementToComparisonTransformx IN (a)tox = aandx NOT IN (a)tox != a.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsNormaliseFieldCompareValueTransform1 = atoa = 1.This transformation inverses [op]invalid @linkTableFieldcomparisons, if they're not in that order.invalid @linkorg.jooq.impl.QOM.ValTo enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsNormaliseFieldCompareValueTransform1 = atoa = 1.This transformation inverses [op]invalid @linkTableFieldcomparisons, if they're not in that order.invalid @linkorg.jooq.impl.QOM.ValTo enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsNormaliseCoalesceToNvlTransform 2 argumentCOALESCE(a, b)toNVL(a, b).To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsNormaliseCoalesceToNvlTransform 2 argumentCOALESCE(a, b)toNVL(a, b).To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsOrEqToInTransformx = c1 OR x = c2tox IN (c1, c2).This transformation simplifies verbose ORpredicates into simplerINpredicates.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsOrEqToInTransformx = c1 OR x = c2tox IN (c1, c2).This transformation simplifies verbose ORpredicates into simplerINpredicates.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsAndNeToNotInTransformx != c1 AND x != c2tox NOT IN (c1, c2).This transformation simplifies verbose ANDpredicates into simplerNOT INpredicates.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsAndNeToNotInTransformx != c1 AND x != c2tox NOT IN (c1, c2).This transformation simplifies verbose ANDpredicates into simplerNOT INpredicates.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsMergeOrComparisonTransformx = a OR x > atox >= a.This transformation merges multiple ORconnected comparisons to a single comparison using a simpler operator.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsMergeOrComparisonTransformx = a OR x > atox >= a.This transformation merges multiple ORconnected comparisons to a single comparison using a simpler operator.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsMergeAndComparisonTransformx >= a AND x invalid input: '<'= atox = a.This transformation merges multiple ANDconnected comparisons to a single comparison using a simpler operator.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsMergeAndComparisonTransformx >= a AND x invalid input: '<'= atox = a.This transformation merges multiple ANDconnected comparisons to a single comparison using a simpler operator.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsMergeInListsTransformx IN (a, b, c) AND x IN (b, c, d)tox IN (b, c).This transformation merges multiple ORconnected comparisons to a single comparison using a simpler operator.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsMergeInListsTransformx IN (a, b, c) AND x IN (b, c, d)tox IN (b, c).This transformation merges multiple ORconnected comparisons to a single comparison using a simpler operator.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsMergeRangePredicatesTransformx >= a AND x invalid input: '<'= btox BETWEEN a AND b.This transformation merges multiple ANDconnected range predicates to a single comparison usingBETWEEN.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsMergeRangePredicatesTransformx >= a AND x invalid input: '<'= btox BETWEEN a AND b.This transformation merges multiple ANDconnected range predicates to a single comparison usingBETWEEN.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsMergeBetweenSymmetricPredicatesTransformx BETWEEN a AND b OR x BETWEEN b AND atox BETWEEN SYMMETRIC a AND b.This transformation merges multiple ORconnectedBETWEENpredicates to a single comparison usingBETWEEN SYMMETRIC.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsMergeBetweenSymmetricPredicatesTransformx BETWEEN a AND b OR x BETWEEN b AND atox BETWEEN SYMMETRIC a AND b.This transformation merges multiple ORconnectedBETWEENpredicates to a single comparison usingBETWEEN SYMMETRIC.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsCaseSearchedToCaseSimpleTransform a searchedCASE WHEN x = .. WHEN x = ..to a simpleCASE x WHEN … WHEN …expression.When a searched CASEexpression always compares the same column to a value, then it can be simplified, possibly unlocking further transformations that are available only to the simpleCASEexpression.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsCaseSearchedToCaseSimpleTransform a searchedCASE WHEN x = .. WHEN x = ..to a simpleCASE x WHEN … WHEN …expression.When a searched CASEexpression always compares the same column to a value, then it can be simplified, possibly unlocking further transformations that are available only to the simpleCASEexpression.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsCaseElseNullTransformCASE … ELSE NULLremoving theELSEclause.CASE WHEN x THEN y ELSE NULL ENDis equivalent toCASE WHEN x THEN y END.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsCaseElseNullTransformCASE … ELSE NULLremoving theELSEclause.CASE WHEN x THEN y ELSE NULL ENDis equivalent toCASE WHEN x THEN y END.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsUnreachableCaseClausesTransformCASEby removing unreachable clauses.Case clauses can be proven to be unreachable, and thus removed: - CASE WHEN p THEN 1 WHEN TRUE THEN 2 WHEN q … ELSE … ENDis equivalent to- CASE WHEN p THEN 1 ELSE 2 END
- CASE WHEN p THEN 1 WHEN FALSE THEN 2 WHEN q .. ELSE .. ENDis equivalent to- CASE WHEN p THEN 1 WHEN q … ELSE … END
 This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsUnreachableCaseClausesTransformCASEby removing unreachable clauses.Case clauses can be proven to be unreachable, and thus removed: - CASE WHEN p THEN 1 WHEN TRUE THEN 2 WHEN q … ELSE … ENDis equivalent to- CASE WHEN p THEN 1 ELSE 2 END
- CASE WHEN p THEN 1 WHEN FALSE THEN 2 WHEN q .. ELSE .. ENDis equivalent to- CASE WHEN p THEN 1 WHEN q … ELSE … END
 This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsUnreachableDecodeClausesTransformDECODEby removing unreachable clauses.DECODE clauses can be proven to be unreachable, and thus removed: - DECODE(a, b, 1, c, 2, b, 3)is equivalent to- DECODE(a, b, 1, c, 2)
- DECODE(a, b, 1, c, 2, b, 3, 4)is equivalent to- DECODE(a, b, 1, c, 2, 4)
 This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsUnreachableDecodeClausesTransformDECODEby removing unreachable clauses.DECODE clauses can be proven to be unreachable, and thus removed: - DECODE(a, b, 1, c, 2, b, 3)is equivalent to- DECODE(a, b, 1, c, 2)
- DECODE(a, b, 1, c, 2, b, 3, 4)is equivalent to- DECODE(a, b, 1, c, 2, 4)
 This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsCaseDistinctToDecodeTransformCASE WHEN a IS NOT DISTINCT FROM b …to an equivalentDECODEfunction.When all WHENclauses of aCASEexpression use theDISTINCTpredicate, then theCASEexpression can be transformed into aDECODEfunction call:- CASE WHEN a IS NOT DISTINCT FROM b THEN 1 ENDis equivalent to- DECODE(a, b, 1)
- CASE WHEN a IS NOT DISTINCT FROM b THEN 1 ELSE 2 ENDis equivalent to- DECODE(a, b, 1, 2)
- CASE WHEN a IS NOT DISTINCT FROM b THEN 1 WHEN a IS NOT DISTINCT FROM c THEN 2 ENDis equivalent to- DECODE(a, b, 1, c, 2)
- CASE WHEN a IS NOT DISTINCT FROM b THEN 1 WHEN a IS NOT DISTINCT FROM c THEN 2 ELSE 3 ENDis equivalent to- DECODE(a, b, 1, c, 2, 3)
 This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsCaseDistinctToDecodeTransformCASE WHEN a IS NOT DISTINCT FROM b …to an equivalentDECODEfunction.When all WHENclauses of aCASEexpression use theDISTINCTpredicate, then theCASEexpression can be transformed into aDECODEfunction call:- CASE WHEN a IS NOT DISTINCT FROM b THEN 1 ENDis equivalent to- DECODE(a, b, 1)
- CASE WHEN a IS NOT DISTINCT FROM b THEN 1 ELSE 2 ENDis equivalent to- DECODE(a, b, 1, 2)
- CASE WHEN a IS NOT DISTINCT FROM b THEN 1 WHEN a IS NOT DISTINCT FROM c THEN 2 ENDis equivalent to- DECODE(a, b, 1, c, 2)
- CASE WHEN a IS NOT DISTINCT FROM b THEN 1 WHEN a IS NOT DISTINCT FROM c THEN 2 ELSE 3 ENDis equivalent to- DECODE(a, b, 1, c, 2, 3)
 This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsCaseMergeWhenWhenTransformCASE WHEN a THEN x WHEN b THEN x ENDtoCASE WHEN a OR b THEN x END.Two consecutive WHENclauses can be merged, if their respectiveTHENclause is identical.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsCaseMergeWhenWhenTransformCASE WHEN a THEN x WHEN b THEN x ENDtoCASE WHEN a OR b THEN x END.Two consecutive WHENclauses can be merged, if their respectiveTHENclause is identical.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsCaseMergeWhenElseTransformCASE WHEN a THEN x WHEN b THEN y ELSE y ENDtoCASE WHEN a THEN x ELSE y END.The ultimate WHENclause can be merged with theELSE, if their respective result is identical. If theWHENclause is the onlyWHENclause, then the entireCASEexpression can be replaced by theELSEclause content.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsCaseMergeWhenElseTransformCASE WHEN a THEN x WHEN b THEN y ELSE y ENDtoCASE WHEN a THEN x ELSE y END.The ultimate WHENclause can be merged with theELSE, if their respective result is identical. If theWHENclause is the onlyWHENclause, then the entireCASEexpression can be replaced by theELSEclause content.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsCaseToCaseAbbreviationTransformCASEexpressions to their respective abbreviations.Some CASEexpressions have a shorter abbreviated form, such asCOALESCE()orNULLIF().This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsCaseToCaseAbbreviationTransformCASEexpressions to their respective abbreviations.Some CASEexpressions have a shorter abbreviated form, such asCOALESCE()orNULLIF().This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsSimplifyCaseAbbreviationTransform complex predicates into simplerCASEabbreviations.Some predicates can be simplified into case abbreviations, such as, for example - a IS NULL OR COALESCE(a = b, FALSE)to- NULLIF(a, b) IS NULL
- a IS NOT NULL AND COALESCE(a != b, TRUE)to- NULLIF(a, b) IS NOT NULL
 This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsSimplifyCaseAbbreviationTransform complex predicates into simplerCASEabbreviations.Some predicates can be simplified into case abbreviations, such as, for example - a IS NULL OR COALESCE(a = b, FALSE)to- NULLIF(a, b) IS NULL
- a IS NOT NULL AND COALESCE(a != b, TRUE)to- NULLIF(a, b) IS NOT NULL
 This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsFlattenCaseAbbreviationFlatten nestedCASEabbreviations such asNVLorCASE.Nested CASEabbreviations can be flattened, as such:- NVL(NVL(a, b), c)to- COALESCE(a, b, c)
- COALESCE(a, ..., COALESCE(b, ..., c), ..., d)to- COALESCE(a, …, b, …, c, ..., d)
 This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsFlattenCaseAbbreviationFlatten nestedCASEabbreviations such asNVLorCASE.Nested CASEabbreviations can be flattened, as such:- NVL(NVL(a, b), c)to- COALESCE(a, b, c)
- COALESCE(a, ..., COALESCE(b, ..., c), ..., d)to- COALESCE(a, …, b, …, c, ..., d)
 This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsFlattenDecodeFlatten nestedDECODEfunctions.Nested DECODEfunctions can be flattened, as such:- DECODE(a, b, c, DECODE(a, d, e))to- DECODE(a, b, c, d, e)
 This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsFlattenDecodeFlatten nestedDECODEfunctions.Nested DECODEfunctions can be flattened, as such:- DECODE(a, b, c, DECODE(a, d, e))to- DECODE(a, b, c, d, e)
 This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsFlattenCaseTransformCASE … ELSE CASE …by flattening the nestedCASE.CASE WHEN a THEN b ELSE CASE WHEN c THEN d END ENDis equivalent toCASE WHEN a THEN b WHEN c THEN d END.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsFlattenCaseTransformCASE … ELSE CASE …by flattening the nestedCASE.CASE WHEN a THEN b ELSE CASE WHEN c THEN d END ENDis equivalent toCASE WHEN a THEN b WHEN c THEN d END.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsTrivialCaseAbbreviationTransform trivial case abbreviations likeNVL(NULL, a)toa.This transformation removes any trivial case abbreviations, such as NVL(),COALESCE(),NULLIF(), etc.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsTrivialCaseAbbreviationTransform trivial case abbreviations likeNVL(NULL, a)toa.This transformation removes any trivial case abbreviations, such as NVL(),COALESCE(),NULLIF(), etc.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsTrivialPredicatesTransform trivial predicates like1 = 1toTRUE.This transformation removes any trivial predicates. This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsTrivialPredicatesTransform trivial predicates like1 = 1toTRUE.This transformation removes any trivial predicates. This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsTrivialBitwiseOperationsTransform trivial bitwise comparisons likeBIT_OR(a, 0)toa.This transformation removes any trivial predicates. This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsTrivialBitwiseOperationsTransform trivial bitwise comparisons likeBIT_OR(a, 0)toa.This transformation removes any trivial predicates. This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsBitSetTransform bitwise operations to an equivalentBIT_SET(a, b)orBIT_SET(a, b, c)expression.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsBitSetTransform bitwise operations to an equivalentBIT_SET(a, b)orBIT_SET(a, b, c)expression.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsBitGetTransform bitwise operations to an equivalentBIT_GET(a, b)expression.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsBitGetTransform bitwise operations to an equivalentBIT_GET(a, b)expression.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsScalarSubqueryCountAsteriskGtZeroTransform predicates comparing scalar subqueries with a count(SELECT COUNT(*) …) > 0to equivalentEXISTS (SELECT 1 …).Scalar subqueries that count rows and whose count is compared to 0 can be transformed into equivalent, but likely cheaper to execute EXISTS queries. This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsScalarSubqueryCountAsteriskGtZeroTransform predicates comparing scalar subqueries with a count(SELECT COUNT(*) …) > 0to equivalentEXISTS (SELECT 1 …).Scalar subqueries that count rows and whose count is compared to 0 can be transformed into equivalent, but likely cheaper to execute EXISTS queries. This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsScalarSubqueryCountExpressionGtZeroTransform predicates comparing scalar subqueries with a count(SELECT COUNT(expr) …) > 0to equivalentEXISTS (SELECT 1 … WHERE expr IS NOT NULL).Scalar subqueries that count non-null expressions and whose count is compared to 0 can be transformed into equivalent, but likely cheaper to execute EXISTS queries. This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsScalarSubqueryCountExpressionGtZeroTransform predicates comparing scalar subqueries with a count(SELECT COUNT(expr) …) > 0to equivalentEXISTS (SELECT 1 … WHERE expr IS NOT NULL).Scalar subqueries that count non-null expressions and whose count is compared to 0 can be transformed into equivalent, but likely cheaper to execute EXISTS queries. This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsEmptyScalarSubqueryTransform empty scalar subqueries like(SELECT 1 WHERE FALSE)toNULL.Scalar subqueries that are guaranteed to produce no results can be replaced by a NULLvalue.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsEmptyScalarSubqueryTransform empty scalar subqueries like(SELECT 1 WHERE FALSE)toNULL.Scalar subqueries that are guaranteed to produce no results can be replaced by a NULLvalue.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsNegNegTransform-(-(x))toxThis transformation removes a redundant arithmetic negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsNegNegTransform-(-(x))toxThis transformation removes a redundant arithmetic negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsBitNotBitNotTransform~(~(x))tox.This transformation removes a redundant bitwise negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsBitNotBitNotTransform~(~(x))tox.This transformation removes a redundant bitwise negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsBitNotBitNandTransform~(bitnand(x, y))tobitand(x, y)and~(bitand(x, y)tobitnand(x, y).This transformation removes a redundant bitwise negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsBitNotBitNandTransform~(bitnand(x, y))tobitand(x, y)and~(bitand(x, y)tobitnand(x, y).This transformation removes a redundant bitwise negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsBitNotBitNorTransform~(bitnor(x, y))tobitor(x, y)and~(bitor(x, y)tobitnor(x, y).This transformation removes a redundant bitwise negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsBitNotBitNorTransform~(bitnor(x, y))tobitor(x, y)and~(bitor(x, y)tobitnor(x, y).This transformation removes a redundant bitwise negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsBitNotBitXNorTransform~(bitxnor(x, y))tobitxor(x, y)and~(bitxor(x, y)tobitxnor(x, y).This transformation removes a redundant bitwise negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsBitNotBitXNorTransform~(bitxnor(x, y))tobitxor(x, y)and~(bitxor(x, y)tobitxnor(x, y).This transformation removes a redundant bitwise negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsNullOnNullInputAny {org.jooq.impl.QOM.UReturnsNullOnNullInput} function or expression withNULLarguments can be replaced byNULL.There are many built-in SQL functions and operators with a RETURNS NULL ON NULL INPUTproperty, e.g.- ABS(NULL)
- MOD(NULL, 1)
- NULL + 1
 To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsNullOnNullInputAny {org.jooq.impl.QOM.UReturnsNullOnNullInput} function or expression withNULLarguments can be replaced byNULL.There are many built-in SQL functions and operators with a RETURNS NULL ON NULL INPUTproperty, e.g.- ABS(NULL)
- MOD(NULL, 1)
- NULL + 1
 To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsIdempotentFunctionRepetitionTransform all repetitions of idempotent functions, such asUPPER(UPPER(s))toUPPER(s).Idempotent functions that are covered so far, include: - LTRIM(LTRIM(s))to- LTRIM(s)
- LTRIM(TRIM(s))to- TRIM(s)
- RTRIM(RTRIM(s))to- RTRIM(s)
- RTRIM(TRIM(s))to- TRIM(s)
- TRIM(LTRIM(s))to- TRIM(s)
- TRIM(RTRIM(s))to- TRIM(s)
- UPPER(UPPER(s))to- UPPER(s)
- LOWER(LOWER(s))to- LOWER(s)
 To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsIdempotentFunctionRepetitionTransform all repetitions of idempotent functions, such asUPPER(UPPER(s))toUPPER(s).Idempotent functions that are covered so far, include: - LTRIM(LTRIM(s))to- LTRIM(s)
- LTRIM(TRIM(s))to- TRIM(s)
- RTRIM(RTRIM(s))to- RTRIM(s)
- RTRIM(TRIM(s))to- TRIM(s)
- TRIM(LTRIM(s))to- TRIM(s)
- TRIM(RTRIM(s))to- TRIM(s)
- UPPER(UPPER(s))to- UPPER(s)
- LOWER(LOWER(s))to- LOWER(s)
 To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsArithmeticComparisonsTransforma + 1 = 2toa = 2 - 1, and other transformations.It is usually best to compare single columns with constants or expressions to encourage index usage. While function based indexes are possible in some RDBMS, ordinary indexes are more reusable and should be preferred. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsArithmeticComparisonsTransforma + 1 = 2toa = 2 - 1, and other transformations.It is usually best to compare single columns with constants or expressions to encourage index usage. While function based indexes are possible in some RDBMS, ordinary indexes are more reusable and should be preferred. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsArithmeticExpressionsTransform1 / y * xtox / y, and other transformations.This transformation simplifies arithmetic expressions. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsArithmeticExpressionsTransform1 / y * xtox / y, and other transformations.This transformation simplifies arithmetic expressions. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsTrigonometricFunctionsTransformSIN(x) / COS(x)toTAN(x), and other transformations.This transformation turns expanded trignonometric function definitions into their shorter equivalents. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsTrigonometricFunctionsTransformSIN(x) / COS(x)toTAN(x), and other transformations.This transformation turns expanded trignonometric function definitions into their shorter equivalents. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsLogarithmicFunctionsTransformLN(value) / LN(base)toLOG(base, value), and other transformations.This transformation turns expanded logarithmic function definitions into their shorter equivalents. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsLogarithmicFunctionsTransformLN(value) / LN(base)toLOG(base, value), and other transformations.This transformation turns expanded logarithmic function definitions into their shorter equivalents. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsHyperbolicFunctionsTransform(EXP(x) - EXP(-x)) / 2toSINH(x), and other transformations.This transformation turns expanded hyperbolic function definitions into their shorter equivalents. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsHyperbolicFunctionsTransform(EXP(x) - EXP(-x)) / 2toSINH(x), and other transformations.This transformation turns expanded hyperbolic function definitions into their shorter equivalents. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformPatternsInverseHyperbolicFunctionsTransformLN(x + SQRT(SQUARE(x) + 1))toASINH(x), and other transformations.This transformation turns expanded inverse hyperbolic function definitions into their shorter equivalents. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformPatternsInverseHyperbolicFunctionsTransformLN(x + SQRT(SQUARE(x) + 1))toASINH(x), and other transformations.This transformation turns expanded inverse hyperbolic function definitions into their shorter equivalents. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformInlineBindValuesForFieldComparisonsTransformQOM.CompareConditionand a few other types of condition to inline their bind values, in case they matchHistorically, prior to ANSI join syntax, joins were implemented by listing tables in the FROM clause and providing join predicates in the WHERE clause, possibly using vendor specific operators like (+)(Oracle, DB2) or*=(SQL Server) for outer join support. For backwards compatibility with older RDBMS versions, ANSI joins in jOOQ code may be converted to equivalent table lists in generated SQL using this flag.This flag has a limited implementation that supports inner joins (in most cases) and outer joins (only for simple comparison predicates). This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformInlineBindValuesForFieldComparisonsTransformQOM.CompareConditionand a few other types of condition to inline their bind values, in case they matchHistorically, prior to ANSI join syntax, joins were implemented by listing tables in the FROM clause and providing join predicates in the WHERE clause, possibly using vendor specific operators like (+)(Oracle, DB2) or*=(SQL Server) for outer join support. For backwards compatibility with older RDBMS versions, ANSI joins in jOOQ code may be converted to equivalent table lists in generated SQL using this flag.This flag has a limited implementation that supports inner joins (in most cases) and outer joins (only for simple comparison predicates). This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
isTransformAnsiJoinToTableListsTransform ANSI join to table lists if possible.Historically, prior to ANSI join syntax, joins were implemented by listing tables in the FROM clause and providing join predicates in the WHERE clause, possibly using vendor specific operators like (+)(Oracle, DB2) or*=(SQL Server) for outer join support. For backwards compatibility with older RDBMS versions, ANSI joins in jOOQ code may be converted to equivalent table lists in generated SQL using this flag.This flag has a limited implementation that supports inner joins (in most cases) and outer joins (only for simple comparison predicates). This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformAnsiJoinToTableListsTransform ANSI join to table lists if possible.Historically, prior to ANSI join syntax, joins were implemented by listing tables in the FROM clause and providing join predicates in the WHERE clause, possibly using vendor specific operators like (+)(Oracle, DB2) or*=(SQL Server) for outer join support. For backwards compatibility with older RDBMS versions, ANSI joins in jOOQ code may be converted to equivalent table lists in generated SQL using this flag.This flag has a limited implementation that supports inner joins (in most cases) and outer joins (only for simple comparison predicates). This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
getTransformInConditionSubqueryWithLimitToDerivedTableDeprecated.- 3.18.0 - [#14634] - The configuration of this transformation is deprecated. It will no longer be commercially available only, but apply also to the jOOQ Open Source Edition, when required.Transform a subquery from an IN condition with LIMIT to an equivalent derived table.This transformation works around a known MySQL limitation "ERROR 1235 (42000): This version of MySQL doesn't yet support 'LIMIT invalid input: '&' IN/ALL/ANY/SOME subquery'" This feature is available in the commercial distribution only. 
- 
setTransformInConditionSubqueryWithLimitToDerivedTable@Deprecated public void setTransformInConditionSubqueryWithLimitToDerivedTable(Transformation value) Deprecated.- 3.18.0 - [#14634] - The configuration of this transformation is deprecated. It will no longer be commercially available only, but apply also to the jOOQ Open Source Edition, when required.Transform a subquery from an IN condition with LIMIT to an equivalent derived table.This transformation works around a known MySQL limitation "ERROR 1235 (42000): This version of MySQL doesn't yet support 'LIMIT invalid input: '&' IN/ALL/ANY/SOME subquery'" This feature is available in the commercial distribution only. 
- 
getTransformQualifyTransform theQUALIFYclause to an equivalent derived table to filter on window functions.This feature is available in the commercial distribution only. 
- 
setTransformQualifyTransform theQUALIFYclause to an equivalent derived table to filter on window functions.This feature is available in the commercial distribution only. 
- 
isTransformTableListsToAnsiJoinTransform table lists to ANSI join if possible.(Very) historically, prior to ANSI join syntax, joins were implemented by listing tables in the FROM clause and providing join predicates in the WHERE clause, possibly using vendor specific operators like (+)(Oracle, DB2) or*=(SQL Server) for outer join support. Migrating such join syntax is tedious. The jOOQ parser can parse the old syntax and this flag enables the transformation to ANSI join syntax.This feature is available in the commercial distribution only. - Returns:
- possible object is
     Boolean
 
- 
setTransformTableListsToAnsiJoinTransform table lists to ANSI join if possible.(Very) historically, prior to ANSI join syntax, joins were implemented by listing tables in the FROM clause and providing join predicates in the WHERE clause, possibly using vendor specific operators like (+)(Oracle, DB2) or*=(SQL Server) for outer join support. Migrating such join syntax is tedious. The jOOQ parser can parse the old syntax and this flag enables the transformation to ANSI join syntax.This feature is available in the commercial distribution only. - Parameters:
- value- allowed object is- Boolean
 
- 
getTransformRownumTransformROWNUMexpressions to correspondingLIMITclauses orROW_NUMBER()expressions.In Oracle 11g and less, ROWNUMfiltering was the most popular way to paginate. This pseudo column is not supported in other RDBMS, and should be replaced in Oracle 12c by the FETCH clause orROW_NUMBER() OVER ()filtering. This transformation allows for replacing such a filter by equivalent SQL, if possible.This feature is available in the commercial distribution only. 
- 
setTransformRownumTransformROWNUMexpressions to correspondingLIMITclauses orROW_NUMBER()expressions.In Oracle 11g and less, ROWNUMfiltering was the most popular way to paginate. This pseudo column is not supported in other RDBMS, and should be replaced in Oracle 12c by the FETCH clause orROW_NUMBER() OVER ()filtering. This transformation allows for replacing such a filter by equivalent SQL, if possible.This feature is available in the commercial distribution only. 
- 
getTransformUnneededArithmeticExpressionsTransform arithmetic expressions on literals and bind variables.Arithmetic expressions may be implemented by the user, or arise from emulations from within jOOQ. Expressions on literals and bind variables could be evaluated in the client prior to generating SQL. This feature is available in the commercial distribution only. 
- 
setTransformUnneededArithmeticExpressionsTransform arithmetic expressions on literals and bind variables.Arithmetic expressions may be implemented by the user, or arise from emulations from within jOOQ. Expressions on literals and bind variables could be evaluated in the client prior to generating SQL. This feature is available in the commercial distribution only. 
- 
getTransformGroupByColumnIndexTransformGROUP BY [column index]clauses by substituting the column index.Not all dialects support grouping by column index, which is a convenient but also a bit confusing feature of some dialects. jOOQ can transform the syntax into an equivalent syntax where the referenced SELECTexpression is duplicated into theGROUP BYclause.This feature is available in the commercial distribution only. 
- 
setTransformGroupByColumnIndexTransformGROUP BY [column index]clauses by substituting the column index.Not all dialects support grouping by column index, which is a convenient but also a bit confusing feature of some dialects. jOOQ can transform the syntax into an equivalent syntax where the referenced SELECTexpression is duplicated into theGROUP BYclause.This feature is available in the commercial distribution only. 
- 
getTransformInlineCTETransform Common Table Expressions (CTE) by inlining theirWITHclause definition to wherever they're referenced.Non-recursive CTE are just syntax sugar for inline views (derived tables). When they're not supported natively, jOOQ can simply inline their definition to wherever they're referenced. This feature is available in the commercial distribution only. 
- 
setTransformInlineCTETransform Common Table Expressions (CTE) by inlining theirWITHclause definition to wherever they're referenced.Non-recursive CTE are just syntax sugar for inline views (derived tables). When they're not supported natively, jOOQ can simply inline their definition to wherever they're referenced. This feature is available in the commercial distribution only. 
- 
getBackslashEscapingWhether string literals should be escaped with backslash.
- 
setBackslashEscapingWhether string literals should be escaped with backslash.
- 
getParamTypeSpecify how bind variables are to be rendered.Possibilities include: - question marks - named parameters - named or inlined parameters - inlined parameters This value is overridden by statementType == STATIC_STATEMENT, in case of which, this defaults to INLINED 
- 
setParamTypeSpecify how bind variables are to be rendered.Possibilities include: - question marks - named parameters - named or inlined parameters - inlined parameters This value is overridden by statementType == STATIC_STATEMENT, in case of which, this defaults to INLINED 
- 
getParamCastModeWhether rendered bind values should be cast to their respective type.
- 
setParamCastModeWhether rendered bind values should be cast to their respective type.
- 
getStatementTypeThe type of statement that is to be executed.
- 
setStatementTypeThe type of statement that is to be executed.
- 
getInlineThresholdThe maximum number of allowed bind variables before inlining all values where0uses the dialect defaults:- SQLDialect.ACCESS: 768
- SQLDialect.ASE: 2000
- SQLDialect.INGRES: 1024
- SQLDialect.ORACLE: 32767
- SQLDialect.POSTGRES: 32767
- SQLDialect.SQLITE: 999
- SQLDialect.SQLSERVER: 2100
 
- 
setInlineThresholdThe maximum number of allowed bind variables before inlining all values where0uses the dialect defaults:- SQLDialect.ACCESS: 768
- SQLDialect.ASE: 2000
- SQLDialect.INGRES: 1024
- SQLDialect.ORACLE: 32767
- SQLDialect.POSTGRES: 32767
- SQLDialect.SQLITE: 999
- SQLDialect.SQLSERVER: 2100
 
- 
getTransactionListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredTransactionListeners.
- 
setTransactionListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredTransactionListeners.
- 
getTransactionListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredTransactionListeners.
- 
setTransactionListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredTransactionListeners.
- 
getMigrationListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredMigrationListeners.
- 
setMigrationListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredMigrationListeners.
- 
getMigrationListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredMigrationListeners.
- 
setMigrationListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredMigrationListeners.
- 
getVisitListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredVisitListeners.
- 
setVisitListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredVisitListeners.
- 
getVisitListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredVisitListeners.
- 
setVisitListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredVisitListeners.
- 
getRecordListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredRecordListeners.
- 
setRecordListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredRecordListeners.
- 
getRecordListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredRecordListeners.
- 
setRecordListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredRecordListeners.
- 
getExecuteListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredExecuteListeners.
- 
setExecuteListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredExecuteListeners.
- 
getExecuteListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredExecuteListeners.
- 
setExecuteListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredExecuteListeners.
- 
isExecuteLoggingWhen set to true, this will add jOOQ's defaultLoggerListenerfor debug logging. This is meant for use in development only.- Returns:
- possible object is
     Boolean
 
- 
setExecuteLoggingWhen set to true, this will add jOOQ's defaultLoggerListenerfor debug logging. This is meant for use in development only.- Parameters:
- value- allowed object is- Boolean
 
- 
isExecuteLoggingSQLExceptions[#14420] Whether constraint violations and otherSQLExceptionshould produce additional log information about the column name and data causing the problem. UnlikeexecuteLogging, this is meant for use in production as well as development. This feature is available only in commercial distributions.- Returns:
- possible object is
     Boolean
 
- 
setExecuteLoggingSQLExceptions[#14420] Whether constraint violations and otherSQLExceptionshould produce additional log information about the column name and data causing the problem. UnlikeexecuteLogging, this is meant for use in production as well as development. This feature is available only in commercial distributions.- Parameters:
- value- allowed object is- Boolean
 
- 
isDiagnosticsLoggingWhen set to true, this will add jOOQ's default logging DiagnosticsListeners.- Returns:
- possible object is
     Boolean
 
- 
setDiagnosticsLoggingWhen set to true, this will add jOOQ's default logging DiagnosticsListeners.- Parameters:
- value- allowed object is- Boolean
 
- 
getDiagnosticsConnectionWhether to activate the DiagnosticsConnection, explicit byDEFAULT, implicit ifON, or turnedOFFentirely.
- 
setDiagnosticsConnectionWhether to activate the DiagnosticsConnection, explicit byDEFAULT, implicit ifON, or turnedOFFentirely.
- 
isUpdateRecordVersionWhether store(), insert(), and update() methods should update the record version prior to the operation, for use withexecuteWithOptimisticLocking.- Returns:
- possible object is
     Boolean
 
- 
setUpdateRecordVersionWhether store(), insert(), and update() methods should update the record version prior to the operation, for use withexecuteWithOptimisticLocking.- Parameters:
- value- allowed object is- Boolean
 
- 
isUpdateRecordTimestampWhether store(), insert(), and update() methods should update the record timestamp prior to the operation, for use withexecuteWithOptimisticLocking.- Returns:
- possible object is
     Boolean
 
- 
setUpdateRecordTimestampWhether store(), insert(), and update() methods should update the record timestamp prior to the operation, for use withexecuteWithOptimisticLocking.- Parameters:
- value- allowed object is- Boolean
 
- 
isExecuteWithOptimisticLockingWhether store() and delete() methods should be executed with optimistic locking.- Returns:
- possible object is
     Boolean
 
- 
setExecuteWithOptimisticLockingWhether store() and delete() methods should be executed with optimistic locking.- Parameters:
- value- allowed object is- Boolean
 
- 
isExecuteWithOptimisticLockingExcludeUnversionedWhether store() and delete() methods should be executed with optimistic locking also on "unversioned" tables, i.e. on tables that do not have a version and/or timestamp column.This flag has no effect when "executeWithOptimisticLocking" is turned off. - Returns:
- possible object is
     Boolean
 
- 
setExecuteWithOptimisticLockingExcludeUnversionedWhether store() and delete() methods should be executed with optimistic locking also on "unversioned" tables, i.e. on tables that do not have a version and/or timestamp column.This flag has no effect when "executeWithOptimisticLocking" is turned off. - Parameters:
- value- allowed object is- Boolean
 
- 
isAttachRecordsWhether fetched records should be attached to the fetching configuration.- Returns:
- possible object is
     Boolean
 
- 
setAttachRecordsWhether fetched records should be attached to the fetching configuration.- Parameters:
- value- allowed object is- Boolean
 
- 
isInsertUnchangedRecordsWhetherTableRecord.insert()calls should be executed if the record is unchanged. This also affects theINSERTpart ofUpdatableRecord.store()andUpdatableRecord.merge()calls.- Returns:
- possible object is
     Boolean
 
- 
setInsertUnchangedRecordsWhetherTableRecord.insert()calls should be executed if the record is unchanged. This also affects theINSERTpart ofUpdatableRecord.store()andUpdatableRecord.merge()calls.- Parameters:
- value- allowed object is- Boolean
 
- 
getUpdateUnchangedRecordsWhetherUpdatableRecord.update()calls should be executed if the record is unchanged. This also affects theUPDATEpart ofUpdatableRecord.store()andUpdatableRecord.merge()calls.
- 
setUpdateUnchangedRecordsWhetherUpdatableRecord.update()calls should be executed if the record is unchanged. This also affects theUPDATEpart ofUpdatableRecord.store()andUpdatableRecord.merge()calls.
- 
isUpdatablePrimaryKeysWhether primary key values are deemed to be "updatable" in jOOQ.Setting this to "true" will allow for updating primary key values through UpdatableRecord.store() and UpdatableRecord.update(). - Returns:
- possible object is
     Boolean
 
- 
setUpdatablePrimaryKeysWhether primary key values are deemed to be "updatable" in jOOQ.Setting this to "true" will allow for updating primary key values through UpdatableRecord.store() and UpdatableRecord.update(). - Parameters:
- value- allowed object is- Boolean
 
- 
isReflectionCachingWhether reflection information should be cached in the configuration.- Returns:
- possible object is
     Boolean
 
- 
setReflectionCachingWhether reflection information should be cached in the configuration.- Parameters:
- value- allowed object is- Boolean
 
- 
isCacheRecordMappersWhether record mappers should be cached in the configuration.- Returns:
- possible object is
     Boolean
 
- 
setCacheRecordMappersWhether record mappers should be cached in the configuration.- Parameters:
- value- allowed object is- Boolean
 
- 
isCacheParsingConnectionWhether parsing connection translations should be cached in the configuration.- Returns:
- possible object is
     Boolean
 
- 
setCacheParsingConnectionWhether parsing connection translations should be cached in the configuration.- Parameters:
- value- allowed object is- Boolean
 
- 
getCacheParsingConnectionLRUCacheSizeThe default implementation of the ParsingConnection cache's LRU cache size.
- 
setCacheParsingConnectionLRUCacheSizeThe default implementation of the ParsingConnection cache's LRU cache size.
- 
isCachePreparedStatementInLoaderWhether JDBCPreparedStatementinstances should be cached in loader API.- Returns:
- possible object is
     Boolean
 
- 
setCachePreparedStatementInLoaderWhether JDBCPreparedStatementinstances should be cached in loader API.- Parameters:
- value- allowed object is- Boolean
 
- 
getThrowExceptionsA strategy defining how exceptions from the database / JDBC driver should be propagated
- 
setThrowExceptionsA strategy defining how exceptions from the database / JDBC driver should be propagated
- 
isFetchWarningsWhether warnings should be fetched after each query execution.- Returns:
- possible object is
     Boolean
 
- 
setFetchWarningsWhether warnings should be fetched after each query execution.- Parameters:
- value- allowed object is- Boolean
 
- 
getFetchServerOutputSizeWhether server output should be fetched after each query execution.
- 
setFetchServerOutputSizeWhether server output should be fetched after each query execution.
- 
isReturnIdentityOnUpdatableRecordWhether calls to store(), insert() and update() should return the identity column.- Returns:
- possible object is
     Boolean
 
- 
setReturnIdentityOnUpdatableRecordWhether calls to store(), insert() and update() should return the identity column.- Parameters:
- value- allowed object is- Boolean
 
- 
isReturnDefaultOnUpdatableRecordWhether calls to store(), insert() and update() should return values for columns that areDataType.defaulted().- Returns:
- possible object is
     Boolean
 
- 
setReturnDefaultOnUpdatableRecordWhether calls to store(), insert() and update() should return values for columns that areDataType.defaulted().- Parameters:
- value- allowed object is- Boolean
 
- 
isReturnComputedOnUpdatableRecordWhether calls to store(), insert() and update() should return values for columns that areDataType.computed().- Returns:
- possible object is
     Boolean
 
- 
setReturnComputedOnUpdatableRecordWhether calls to store(), insert() and update() should return values for columns that areDataType.computed().- Parameters:
- value- allowed object is- Boolean
 
- 
isReturnAllOnUpdatableRecordWhether calls to store(), insert() and update() should return all columns, not just identity columns.Do note that only few databases support this feature. It is supported only in case the INSERT's or UPDATE's RETURNING clause is fully supported, also for non-IDENTITY columns. - Returns:
- possible object is
     Boolean
 
- 
setReturnAllOnUpdatableRecordWhether calls to store(), insert() and update() should return all columns, not just identity columns.Do note that only few databases support this feature. It is supported only in case the INSERT's or UPDATE's RETURNING clause is fully supported, also for non-IDENTITY columns. - Parameters:
- value- allowed object is- Boolean
 
- 
isReturnRecordToPojoWhether calls to store(), insert(), update(), and delete() that are called on an UpdatableRecord that is created from a POJO (e.g. in a DAO) should return all Record values to the POJO, including IDENTITY values, and ifreturnAllOnUpdatableRecordis active, also other values.- Returns:
- possible object is
     Boolean
 
- 
setReturnRecordToPojoWhether calls to store(), insert(), update(), and delete() that are called on an UpdatableRecord that is created from a POJO (e.g. in a DAO) should return all Record values to the POJO, including IDENTITY values, and ifreturnAllOnUpdatableRecordis active, also other values.- Parameters:
- value- allowed object is- Boolean
 
- 
isMapJPAAnnotationsWhether JPA annotations should be considered by the DefaultRecordMapper.- Returns:
- possible object is
     Boolean
 
- 
setMapJPAAnnotationsWhether JPA annotations should be considered by the DefaultRecordMapper.- Parameters:
- value- allowed object is- Boolean
 
- 
isMapRecordComponentParameterNamesWhether constructor parameter names obtained from theRecordcomponent names should be considered by the DefaultRecordMapper.- Returns:
- possible object is
     Boolean
 
- 
setMapRecordComponentParameterNamesWhether constructor parameter names obtained from theRecordcomponent names should be considered by the DefaultRecordMapper.- Parameters:
- value- allowed object is- Boolean
 
- 
isMapConstructorPropertiesParameterNamesWhether constructor parameter names obtained from theConstructorPropertiesannotation should be considered by the DefaultRecordMapper.- Returns:
- possible object is
     Boolean
 
- 
setMapConstructorPropertiesParameterNamesWhether constructor parameter names obtained from theConstructorPropertiesannotation should be considered by the DefaultRecordMapper.- Parameters:
- value- allowed object is- Boolean
 
- 
isMapConstructorParameterNamesWhether constructor parameter names obtained via reflection in Java 8+ should be considered by the DefaultRecordMapper. This flag has no effect in Java 6 or 7.- Returns:
- possible object is
     Boolean
 
- 
setMapConstructorParameterNamesWhether constructor parameter names obtained via reflection in Java 8+ should be considered by the DefaultRecordMapper. This flag has no effect in Java 6 or 7.- Parameters:
- value- allowed object is- Boolean
 
- 
isMapConstructorParameterNamesInKotlinWhether constructor parameter names obtained via reflection in Kotlin should be considered by the DefaultRecordMapper. This flag has no effect in Java.- Returns:
- possible object is
     Boolean
 
- 
setMapConstructorParameterNamesInKotlinWhether constructor parameter names obtained via reflection in Kotlin should be considered by the DefaultRecordMapper. This flag has no effect in Java.- Parameters:
- value- allowed object is- Boolean
 
- 
getQueryPoolableThe default JDBC poolable property that should be applied to all jOOQ queries, for which no specific poolable flag was specified.
- 
setQueryPoolableThe default JDBC poolable property that should be applied to all jOOQ queries, for which no specific poolable flag was specified.
- 
getQueryTimeoutThe default JDBC queryTimeout property that should be applied to all jOOQ queries, for which no specific queryTimeout was specified.
- 
setQueryTimeoutThe default JDBC queryTimeout property that should be applied to all jOOQ queries, for which no specific queryTimeout was specified.
- 
getMaxRowsThe default JDBC maxRows property that should be applied to all jOOQ queries, for which no specific maxRows value was specified.
- 
setMaxRowsThe default JDBC maxRows property that should be applied to all jOOQ queries, for which no specific maxRows value was specified.
- 
getFetchSizeThe default JDBC fetchSize property that should be applied to all jOOQ queries, for which no specific fetchSize value was specified.
- 
setFetchSizeThe default JDBC fetchSize property that should be applied to all jOOQ queries, for which no specific fetchSize value was specified.
- 
getBatchSizeA property specifying a batch size that should be applied to all automatically createdBatchedConnectioninstances.
- 
setBatchSizeA property specifying a batch size that should be applied to all automatically createdBatchedConnectioninstances.
- 
isDebugInfoOnStackTrace[#5570] Whether exception stack traces should be enhanced with additional debug information.- Returns:
- possible object is
     Boolean
 
- 
setDebugInfoOnStackTrace[#5570] Whether exception stack traces should be enhanced with additional debug information.- Parameters:
- value- allowed object is- Boolean
 
- 
isInListPadding[#5600] Whether IN lists in IN predicates should be padded to powers of inListPadBase (default 2).- Returns:
- possible object is
     Boolean
 
- 
setInListPadding[#5600] Whether IN lists in IN predicates should be padded to powers of inListPadBase (default 2).- Parameters:
- value- allowed object is- Boolean
 
- 
getInListPadBase[#7095] The base to use to calculate the powers of when applying in list padding.
- 
setInListPadBase[#7095] The base to use to calculate the powers of when applying in list padding.
- 
getDelimiter[#5826] The delimiter character to be used to delimit statements in batches.
- 
setDelimiter[#5826] The delimiter character to be used to delimit statements in batches.
- 
isEmulateOnDuplicateKeyUpdateOnPrimaryKeyOnly[#6462] Use only the primary key to emulate MySQL's INSERT .. ON DUPLICATE KEY UPDATE statement. In MySQL, the statement considers all unique keys for duplicates to apply an update rather than an insert. Earlier versions of jOOQ considered only the PRIMARY KEY. This flag can be turned on to maintain backwards compatibility.- Returns:
- possible object is
     Boolean
 
- 
setEmulateOnDuplicateKeyUpdateOnPrimaryKeyOnly[#6462] Use only the primary key to emulate MySQL's INSERT .. ON DUPLICATE KEY UPDATE statement. In MySQL, the statement considers all unique keys for duplicates to apply an update rather than an insert. Earlier versions of jOOQ considered only the PRIMARY KEY. This flag can be turned on to maintain backwards compatibility.- Parameters:
- value- allowed object is- Boolean
 
- 
getEmulateMultiset[#3884] HowMULTISETsupport should be emulated.
- 
setEmulateMultiset[#3884] HowMULTISETsupport should be emulated.
- 
isEmulateComputedColumns[#13418] Whether computed columns should be emulated in the client.This can be useful if a schema was generated using a dialect that supports computed columns, but it is deployed on an RDBMS that does not. - Returns:
- possible object is
     Boolean
 
- 
setEmulateComputedColumns[#13418] Whether computed columns should be emulated in the client.This can be useful if a schema was generated using a dialect that supports computed columns, but it is deployed on an RDBMS that does not. - Parameters:
- value- allowed object is- Boolean
 
- 
getExecuteUpdateWithoutWhere[#6771] Specifies whether UPDATE statements are allowed to be executed lacking a WHERE clause. This has no effect on rendering the statements SQL string.
- 
setExecuteUpdateWithoutWhere[#6771] Specifies whether UPDATE statements are allowed to be executed lacking a WHERE clause. This has no effect on rendering the statements SQL string.
- 
getExecuteDeleteWithoutWhere[#6771] Specifies whether DELETE statements are allowed to be executed lacking a WHERE clause. This has no effect on rendering the statements SQL string.
- 
setExecuteDeleteWithoutWhere[#6771] Specifies whether DELETE statements are allowed to be executed lacking a WHERE clause. This has no effect on rendering the statements SQL string.
- 
getInterpreterDialect[#7337] The dialect that should be used to interpret SQL DDL statements.SQLDialect.DEFAULTmeans that jOOQ interprets the SQL itself. Any other dialect (if supported) will be interpreted on an actual JDBC connection.
- 
setInterpreterDialect[#7337] The dialect that should be used to interpret SQL DDL statements.SQLDialect.DEFAULTmeans that jOOQ interprets the SQL itself. Any other dialect (if supported) will be interpreted on an actual JDBC connection.
- 
getInterpreterNameLookupCaseSensitivity[#9633] The case sensitivity of identifiers used when interpreting SQL DDL statements.
- 
setInterpreterNameLookupCaseSensitivity[#9633] The case sensitivity of identifiers used when interpreting SQL DDL statements.
- 
getInterpreterLocaleThe Locale to be used with any interpreter locale dependent logic, defaulting togetLocale().
- 
setInterpreterLocaleThe Locale to be used with any interpreter locale dependent logic, defaulting togetLocale().
- 
isInterpreterDelayForeignKeyDeclarationsUsing this flag, the interpreter will be able to delay the addition of foreign key declarations until the end of the interpretation run.- Returns:
- possible object is
     Boolean
 
- 
setInterpreterDelayForeignKeyDeclarationsUsing this flag, the interpreter will be able to delay the addition of foreign key declarations until the end of the interpretation run.- Parameters:
- value- allowed object is- Boolean
 
- 
isMetaIncludeSystemIndexesTheMetaimplementation that is backed byDatabaseMetaDatadoes not produce system generated indexes on constraints, by default.- Returns:
- possible object is
     Boolean
 
- 
setMetaIncludeSystemIndexesTheMetaimplementation that is backed byDatabaseMetaDatadoes not produce system generated indexes on constraints, by default.- Parameters:
- value- allowed object is- Boolean
 
- 
isMetaIncludeSystemSequencesTheMetaimplementation that is backed byDatabaseMetaDatadoes not produce system generated sequences, by default.- Returns:
- possible object is
     Boolean
 
- 
setMetaIncludeSystemSequencesTheMetaimplementation that is backed byDatabaseMetaDatadoes not produce system generated sequences, by default.- Parameters:
- value- allowed object is- Boolean
 
- 
getMigrationHistorySchemaThe database schema where the migration history is located.
- 
setMigrationHistorySchemaThe database schema where the migration history is located.
- 
isMigrationHistorySchemaCreateSchemaIfNotExistsWhethergetMigrationHistorySchema()should be created if it doesn't exist.- Returns:
- possible object is
     Boolean
 
- 
setMigrationHistorySchemaCreateSchemaIfNotExistsWhethergetMigrationHistorySchema()should be created if it doesn't exist.- Parameters:
- value- allowed object is- Boolean
 
- 
getMigrationDefaultSchemaThe default schema whose unqualified objects that are included in the migration.
- 
setMigrationDefaultSchemaThe default schema whose unqualified objects that are included in the migration.
- 
isMigrationSchemataCreateSchemaIfNotExistsWhethergetMigrationSchemata()should be created if they don't exist.- Returns:
- possible object is
     Boolean
 
- 
setMigrationSchemataCreateSchemaIfNotExistsWhethergetMigrationSchemata()should be created if they don't exist.- Parameters:
- value- allowed object is- Boolean
 
- 
isMigrationAllowsUndoWhether migrations are allowed to be executed in inverse order.This is a potentially destructive feature, which should not be turned on in production. It is useful mostly to quickly switch between branches in a development environment. This feature is available only in commercial distributions. - Returns:
- possible object is
     Boolean
 
- 
setMigrationAllowsUndoWhether migrations are allowed to be executed in inverse order.This is a potentially destructive feature, which should not be turned on in production. It is useful mostly to quickly switch between branches in a development environment. This feature is available only in commercial distributions. - Parameters:
- value- allowed object is- Boolean
 
- 
isMigrationRevertUntrackedWhether migrations revert any untracked changes in the schemas that are being migrated.This is a potentially destructive feature, which should not be turned on in production. It is useful mostly to quickly revert any elements created in a development environment. This feature is available only in commercial distributions. - Returns:
- possible object is
     Boolean
 
- 
setMigrationRevertUntrackedWhether migrations revert any untracked changes in the schemas that are being migrated.This is a potentially destructive feature, which should not be turned on in production. It is useful mostly to quickly revert any elements created in a development environment. This feature is available only in commercial distributions. - Parameters:
- value- allowed object is- Boolean
 
- 
isMigrationAutoBaselineWhether to automatically existing schemas that are not yet managed by jOOQ Migrations.- Returns:
- possible object is
     Boolean
 
- 
setMigrationAutoBaselineWhether to automatically existing schemas that are not yet managed by jOOQ Migrations.- Parameters:
- value- allowed object is- Boolean
 
- 
isMigrationAutoVerificationWhether a migration automatically runs a verification first.- Returns:
- possible object is
     Boolean
 
- 
setMigrationAutoVerificationWhether a migration automatically runs a verification first.- Parameters:
- value- allowed object is- Boolean
 
- 
isMigrationIgnoreDefaultTimestampPrecisionDiffsVariousmigrateTo()methods (e.g.Meta.migrateTo(org.jooq.Meta)) ignore the difference betweenTIMESTAMPandTIMESTAMP(6), if 6 is the default precision for timestamps on the configured dialect.- Returns:
- possible object is
     Boolean
 
- 
setMigrationIgnoreDefaultTimestampPrecisionDiffsVariousmigrateTo()methods (e.g.Meta.migrateTo(org.jooq.Meta)) ignore the difference betweenTIMESTAMPandTIMESTAMP(6), if 6 is the default precision for timestamps on the configured dialect.- Parameters:
- value- allowed object is- Boolean
 
- 
getLocaleThe Locale to be used with any locale dependent logic if there is not a more specific locale available. More specific locales include e.g.getRenderLocale(),getParseLocale(), orgetInterpreterLocale().
- 
setLocaleThe Locale to be used with any locale dependent logic if there is not a more specific locale available. More specific locales include e.g.getRenderLocale(),getParseLocale(), orgetInterpreterLocale().
- 
getParseDialect[#7337] The input dialect that should be chosen to disambiguate ambiguous SQL syntax.
- 
setParseDialect[#7337] The input dialect that should be chosen to disambiguate ambiguous SQL syntax.
- 
getParseLocaleThe Locale to be used with any parser locale dependent logic, defaulting togetLocale().
- 
setParseLocaleThe Locale to be used with any parser locale dependent logic, defaulting togetLocale().
- 
getParseDateFormatThe date format to use when parsing functions whose behaviour depends on some session date format, such as NLS_DATE_FORMAT in Oracle
- 
setParseDateFormatThe date format to use when parsing functions whose behaviour depends on some session date format, such as NLS_DATE_FORMAT in Oracle
- 
getParseTimestampFormatThe timestamp format to use when parsing functions whose behaviour depends on some session date format, such as NLS_TIMESTAMP_FORMAT in Oracle
- 
setParseTimestampFormatThe timestamp format to use when parsing functions whose behaviour depends on some session date format, such as NLS_TIMESTAMP_FORMAT in Oracle
- 
getParseNamedParamPrefixThe prefix to use for named parameters in parsed SQL.Named parameter syntax defaults to :name(such as supported by Oracle, JPA, Spring), but vendor specific parameters may look differently. This flag can be used to determine the prefix to be used by named parameters, such as@for SQL Server's@nameor$for PostgreSQL's$namewhen parsing SQL."Named indexed" parameters can be obtained in the same way by specifingy ParamType#NAMEDand not providing a name to parameters, resulting in:1or@1or$1, etc.
- 
setParseNamedParamPrefixThe prefix to use for named parameters in parsed SQL.Named parameter syntax defaults to :name(such as supported by Oracle, JPA, Spring), but vendor specific parameters may look differently. This flag can be used to determine the prefix to be used by named parameters, such as@for SQL Server's@nameor$for PostgreSQL's$namewhen parsing SQL."Named indexed" parameters can be obtained in the same way by specifingy ParamType#NAMEDand not providing a name to parameters, resulting in:1or@1or$1, etc.
- 
getParseNameCase[#7337] The default name case for parsed identifiers.
- 
setParseNameCase[#7337] The default name case for parsed identifiers.
- 
getParseWithMetaLookups[#7163] Whether the parser should perform meta lookups in the Configuration's MetaProvider.
- 
setParseWithMetaLookups[#7163] Whether the parser should perform meta lookups in the Configuration's MetaProvider.
- 
getParseAppendMissingTableReferencesTransform the parsed SQL to append missing table references to the query'sFROMorUSINGclause, if applicable.Teradata (and possibly others) allow for referencing tables that are not listed in the FROMclause, such asSELECT t.* FROM t WHERE t.i = u.i. This transformation is executed in the parser, to produceSELECT t.* FROM t, u WHERE t.i = u.i, instead. By default, it is active when the input dialect supports this syntax.This feature is available in the commercial distribution only. 
- 
setParseAppendMissingTableReferencesTransform the parsed SQL to append missing table references to the query'sFROMorUSINGclause, if applicable.Teradata (and possibly others) allow for referencing tables that are not listed in the FROMclause, such asSELECT t.* FROM t WHERE t.i = u.i. This transformation is executed in the parser, to produceSELECT t.* FROM t, u WHERE t.i = u.i, instead. By default, it is active when the input dialect supports this syntax.This feature is available in the commercial distribution only. 
- 
isParseSetCommands[#9780] Whether commands of the typeSET key = valueshould be parsed rather than ignored.- Returns:
- possible object is
     Boolean
 
- 
setParseSetCommands[#9780] Whether commands of the typeSET key = valueshould be parsed rather than ignored.- Parameters:
- value- allowed object is- Boolean
 
- 
getParseUnsupportedSyntax[#5917] Whether the parser should accept unsupported (but known) syntax.
- 
setParseUnsupportedSyntax[#5917] Whether the parser should accept unsupported (but known) syntax.
- 
getParseUnknownFunctions[#7344] Whether the parser should accept unknown functions.
- 
setParseUnknownFunctions[#7344] Whether the parser should accept unknown functions.
- 
isParseIgnoreCommercialOnlyFeatures[#13109] Whether the parser of the jOOQ Open Source Edition should ignore commercial only features, rather than failing.- Returns:
- possible object is
     Boolean
 
- 
setParseIgnoreCommercialOnlyFeatures[#13109] Whether the parser of the jOOQ Open Source Edition should ignore commercial only features, rather than failing.- Parameters:
- value- allowed object is- Boolean
 
- 
isParseIgnoreComments[#8325] Whether the parser should ignore content between ignore comment tokens.- Returns:
- possible object is
     Boolean
 
- 
setParseIgnoreComments[#8325] Whether the parser should ignore content between ignore comment tokens.- Parameters:
- value- allowed object is- Boolean
 
- 
getParseIgnoreCommentStart[#8325] The ignore comment start token
- 
setParseIgnoreCommentStart[#8325] The ignore comment start token
- 
getParseIgnoreCommentStop[#8325] The ignore comment stop token
- 
setParseIgnoreCommentStop[#8325] The ignore comment stop token
- 
isParseRetainCommentsBetweenQueries[#12538] Whether the parser should retain comments and whitespace between queries when parsing multiple queries throughParser.parse(String).jOOQ's query object model doesn't have a way to represent comments or other whitespace, and as such, the parser simply skips them by default. However, it may be desirable to retain comments before or in between top level queries, when parsing multiple such queries in a script. Comments inside of queries (including procedural statements) are still not supported. - Returns:
- possible object is
     Boolean
 
- 
setParseRetainCommentsBetweenQueries[#12538] Whether the parser should retain comments and whitespace between queries when parsing multiple queries throughParser.parse(String).jOOQ's query object model doesn't have a way to represent comments or other whitespace, and as such, the parser simply skips them by default. However, it may be desirable to retain comments before or in between top level queries, when parsing multiple such queries in a script. Comments inside of queries (including procedural statements) are still not supported. - Parameters:
- value- allowed object is- Boolean
 
- 
isParseMetaDefaultExpressions[#8469] Whether to parse default expressions retrieved fromDatabaseMetaData.- Returns:
- possible object is
     Boolean
 
- 
setParseMetaDefaultExpressions[#8469] Whether to parse default expressions retrieved fromDatabaseMetaData.- Parameters:
- value- allowed object is- Boolean
 
- 
isParseMetaViewSources[#8469] Whether to parse view sources retrieved fromDatabaseMetaData.- Returns:
- possible object is
     Boolean
 
- 
setParseMetaViewSources[#8469] Whether to parse view sources retrieved fromDatabaseMetaData.- Parameters:
- value- allowed object is- Boolean
 
- 
getReadonlyTableRecordInsert[#9864] The behaviour when trying to insert into readonly columns usingTableRecord.insert().
- 
setReadonlyTableRecordInsert[#9864] The behaviour when trying to insert into readonly columns usingTableRecord.insert().
- 
getReadonlyUpdatableRecordUpdate[#9864] The behaviour when trying to update a readonly column usingUpdatableRecord.update().
- 
setReadonlyUpdatableRecordUpdate[#9864] The behaviour when trying to update a readonly column usingUpdatableRecord.update().
- 
getReadonlyInsert
- 
setReadonlyInsert
- 
getReadonlyUpdate
- 
setReadonlyUpdate
- 
isApplyWorkaroundFor7962[#7963] Apply workaround for ORA-04043 when inserting into Oracle tables with qualified, quoted identifiers, and fetching generated keys- Returns:
- possible object is
     Boolean
 
- 
setApplyWorkaroundFor7962[#7963] Apply workaround for ORA-04043 when inserting into Oracle tables with qualified, quoted identifiers, and fetching generated keys- Parameters:
- value- allowed object is- Boolean
 
- 
getWarnOnStaticTypeRegistryAccess[#15286] The warning level when the deprecated static type registry was accessed by legacy code.
- 
setWarnOnStaticTypeRegistryAccess[#15286] The warning level when the deprecated static type registry was accessed by legacy code.
- 
getInterpreterSearchPath
- 
setInterpreterSearchPath
- 
getMigrationSchemata
- 
setMigrationSchemata
- 
getParseSearchPath
- 
setParseSearchPath
- 
withForceIntegerTypesOnZeroScaleDecimalsHistorically, zero-scale decimal types are generated as their most appropriate, corresponding integer type (e.g. NUMBER(2, 0) and less: Byte). The same behaviour is replicated in theMetaAPI. This flag allows for turning off this feature.
- 
withRenderCatalogWhether any catalog name should be rendered at all.Use this for single-catalog environments, or when all objects are made available using synonyms 
- 
withRenderSchemaWhether any schema name should be rendered at all.Setting this to false also implicitly sets "renderCatalog" to false. Use this for single-schema environments, or when all objects are made available using synonyms 
- 
withRenderTableWhether any table name qualification should be rendered at all on columns.Setting when tables aren't rendered, then implicitly, schemas and catalogs aren't rendered either. The following values are available: - RenderTable.ALWAYS: The default, which should always be preferred. Columns are always qualified with their tables, where possible.
- RenderTable.WHEN_MULTIPLE_TABLES: The simplest option to reduce generated query verbosity, avoiding table qualification only in queries with a single table in the- FROMclause.
- RenderTable.WHEN_AMBIGUOUS_COLUMNS: A much more expensive to compute option that checks the- FROMclause for ambiguous column names, in case of which columns are qualified.
- RenderTable.NEVER: Always turn off table qualification.
 Use this when verbosity of rendered SQL is a problem. 
- 
withRenderMappingConfigure render mapping for runtime schema / table rewriting in generated SQL.
- 
withRenderQuotedNamesWhether rendered schema, table, column names, etc should be quoted.This only affects names created through DSL.name(String)methods (including those that are implicitly created through this method), notDSL.quotedName(String)orDSL.unquotedName(String), whose behaviour cannot be overridden.This setting does not affect any plain SQL usage. 
- 
withRenderNameCaseWhether the case ofNamereferences should be modified in any way.Names are modified irrespective of the getRenderQuotedNames()setting.This setting does not affect any plain SQL usage. 
- 
withRenderNameStyleDeprecated.- 3.12.0 - [#5909] - UseRenderQuotedNamesandRenderNameCaseinstead.Whether rendered schema, table, column names, etc should be quoted in rendered SQL, or transformed in any other way.This is set to "QUOTED" by default for backwards-compatibility. 
- 
withRenderNamedParamPrefixThe prefix to use for named parameters in generated SQL.Named parameter syntax defaults to :name(such as supported by Oracle, JPA, Spring), but vendor specific parameters may look differently. This flag can be used to determine the prefix to be used by named parameters, such as@for SQL Server's@nameor$for PostgreSQL's$name, when generating SQL."Named indexed" parameters can be obtained in the same way by specifingy ParamType#NAMEDand not providing a name to parameters, resulting in:1or@1or$1, etc.
- 
withRenderKeywordCaseWhether the case ofKeywordreferences should be modified in any way.
- 
withRenderKeywordStyleDeprecated.- 3.12.0 - [#5909] - UseRenderKeywordCaseinstead.Whether the case ofKeywordreferences should be modified in any way.
- 
withRenderLocaleThe Locale to be used with any render locale dependent logic (as e.g. transforming names to lower / uppper case), defaulting togetLocale().
- 
withRenderFormattedWhether rendered SQL should be pretty-printed.
- 
withRenderFormattingAll sorts of formatting flags / settings.
- 
withRenderOptionalAssociativityParenthesesWhether to render optional parentheses to make associativity explicit, e.g.((a + b) + c)instead of (a + b + c).
- 
withRenderOptionalAsKeywordForTableAliasesWhether to render the optionalASkeyword in table aliases, if it is optional in the output dialect. This is ignored if the keyword is not supported (e.g. in Oracle)
- 
withRenderOptionalAsKeywordForFieldAliasesWhether to render the optionalASkeyword in table aliases, if it is optional in the output dialect.
- 
withRenderOptionalInnerKeywordWhether to render the optionalINNERkeyword inINNER JOIN, if it is optional in the output dialect.
- 
withRenderOptionalOuterKeywordWhether to render the optionalOUTERkeyword inOUTER JOIN, if it is optional in the output dialect.
- 
withRenderImplicitWindowRangeWhether to render an explicit windowRANGEclause when an implicit clause is applied.
- 
withRenderScalarSubqueriesForStoredFunctionsWhether stored function calls should be wrapped in scalar subqueries.Oracle 11g (and potentially, other databases too) implements scalar subquery caching. With this flag set to true, users can automatically profit from this feature in all SQL statements. 
- 
withRenderImplicitJoinTypeThe join type to be generated by implicit joins for to-one paths inSelectqueries.The DEFAULTis dependent on the nullability of the foreign key (LEFT_JOINfor nullable foreign keys andINNER_JOINfor non-nullable foreign keys). In DML statements, it is alwaysSCALAR_SUBQUERY, unless DML joins are supported.
- 
withRenderImplicitJoinToManyTypeThe join type to be generated by implicit joins for to-many paths inSelectqueries.The DEFAULTisSCALAR_SUBQUERYif the join path is implicit only, i.e. absent from theFROMclause, to prevent accidental cartesian products, orLEFT_JOINif declared explicitly in theFROMclause. In DML statements, it is alwaysSCALAR_SUBQUERY, unless DML joins are supported.
- 
withRenderDefaultNullabilityWhether theNullability.DEFAULTnullablity should be rendered in generated DDL, and how it should be rendered.
- 
withRenderCoalesceToEmptyStringInConcatWhether stored function calls should be wrapped in scalar subqueries.Oracle 11g (and potentially, other databases too) implements scalar subquery caching. With this flag set to true, users can automatically profit from this feature in all SQL statements. This feature is available in the commercial distribution only. 
- 
withRenderOrderByRownumberForEmulatedPaginationWhether an additionalORDER BY rnclause should be rendered on emulated paginated queries.Older databases did not support OFFSET .. FETCH pagination, so jOOQ emulates it using derived tables and ROWNUM(Oracle 11g and older) orROW_NUMBER()(e.g. DB2, SQL Server, etc.) filtering. While these subqueries are ordered, the ordering is not guaranteed to be stable in the outer most queries. It may be stable (and e.g. in Oracle, it mostly is, if queries are not parallel, or joined to other queries, etc.), so the excessORDER BYclause may add some additional performance overhead. This setting forces jOOQ to not generate the additionalORDER BYclause.For details, see https://github.com/jOOQ/jOOQ/issues/7609. 
- 
withRenderOutputForSQLServerReturningClauseWhether the jOOQRETURNINGclause should map to SQL Server'sOUTPUTclause.SQL Server supports an OUTPUTclause in most DML statements, whose behaviour is almost identical toRETURNINGin Firebird, Oracle, PostgreSQL. Users who want to prevent jOOQ from rendering thisOUTPUTclause can deactivate this flag to revert to jOOQ callingjava.sql.Statement#getGeneratedKeys()instead, which is only supported for single row inserts.This OUTPUTclause does not support fetching trigger generated values. In order to fetch trigger generated values,fetchTriggerValuesAfterReturningneeds to be enabled as well.For details, see https://github.com/jOOQ/jOOQ/issues/4498. 
- 
withRenderGroupConcatMaxLenSessionVariableWhether the jOOQGROUP_CONCATfunction should be overflow-protected by setting the@@group_concat_max_lensession variable in MySQL style database systems.MySQL truncates GROUP_CONCATresults after a certain length, which may be way too small for jOOQ's usage, especially when using theMULTISETemulation. By default, jOOQ sets a session variable to the highest possible value prior to executing a query containingGROUP_CONCAT. This flag can be used to opt out of this.For details, see https://github.com/jOOQ/jOOQ/issues/12092. 
- 
withRenderParenthesisAroundSetOperationQueriesWhether queries combined with set operators (e.g. UNION and UNION ALL) should always be surrounded by a parenthesis pair.By default (i.e. when this setting is set to falsejOOQ will only render parenthesis pairs around queries combined with set operators when required. This is for example the case when set operators are nested, when non-associative operators like EXCEPT are used, or when the queries are rendered as derived tables.When this setting is set to truethe queries combined with set operators will always be surrounded by a parenthesis pair.For details, see https://github.com/jOOQ/jOOQ/issues/3676 and https://github.com/jOOQ/jOOQ/issues/9751. 
- 
withRenderVariablesInDerivedTablesForEmulationsWhether emulations that require repeating expressions should render variables for those expressions in derived tables.For details, see https://github.com/jOOQ/jOOQ/issues/14065. 
- 
withRenderRowConditionForSeekClauseWhether a(a, b) invalid input: '<' (:a, :b)row predicate should be rendered for theSEEKclause.Some RDBMS may support (a, b) invalid input: '<' (:a, :b)row predicate syntax, which is very convenient forSEEKclause implementations, but fail to optimise this predicate as could be expected. This flag allows for expanding the predicate to the much more verbose, but equivalent(a invalid input: '<' :a) OR (a = :a AND b invalid input: '<' :b). Dialects without native support for row predicates aren't affected by this flag.
- 
withRenderRedundantConditionForSeekClauseWhether a redundant(a invalid input: '<'= :a)predicate should be rendered for a(a, b) invalid input: '<' (:a, :b)predicate for theSEEKclause.Some RDBMS may not be able to properly optimise (a, b) invalid input: '<' ('a', 'b')or(a invalid input: '<' 'a') OR (a = 'a' AND b invalid input: '<' 'b'), and choose an appropriate index. By adding an additional redundant predicate, jOOQ may help the optimiser, e.g.(a invalid input: '<'= :a) AND (a, b) invalid input: '<' ('a', 'b')or(a invalid input: '<'= :a) AND ((a invalid input: '<' 'a') OR (a = 'a' AND b invalid input: '<' 'b'))
- 
withRenderPlainSQLTemplatesAsRawWhether plain SQL templates (SQL) are rendered as raw string content.
- 
withRenderDollarQuotedStringTokenThe token to place between the$$signs of a PostgreSQL dollar quoted string generated by jOOQ.
- 
withNamePathSeparatorThe character(s) to be used as a separator in paths encoded in ainvalid @linkNameA few hierarchical mapping features work with paths encoded in names (specifically field aliases), such as the reflective mapping of nested values when aliasing fields as: SELECT a.first_name AS "book.author.firstName" a.last_name AS "book.author.lastName" FROM ...Not all dialects support "." in identifiers. This setting allows for specifying an alternative String to use as separator, e.g. "__". 
- 
withBindOffsetDateTimeTypeWhether thejava.time(JSR 310) typeOffsetDateTimeshould be bound natively to JDBC.Historically, jOOQ encoded the java.timetypes as strings to offer better compatibility with older JDBC drivers. By now, most drivers should support thejava.timetypes. Using them may produce better performance both on the server and on the client side.This flag allows for reverting to pre-jOOQ 3.14 behaviour, where the default is to bind these types natively. For details, see https://github.com/jOOQ/jOOQ/issues/9902. 
- 
withBindOffsetTimeTypeWhether thejava.time(JSR 310) typeOffsetTimeshould be bound natively to JDBC.Historically, jOOQ encoded the java.timetypes as strings to offer better compatibility with older JDBC drivers. By now, most drivers should support thejava.timetypes. Using them may produce better performance both on the server and on the client side.This flag allows for reverting to pre-jOOQ 3.14 behaviour, where the default is to bind these types natively. For details, see https://github.com/jOOQ/jOOQ/issues/9902. 
- 
withFetchTriggerValuesAfterSQLServerOutputDeprecated.- 3.18.0 - [#13912] [#15316] - UsefetchTriggerValuesAfterReturninginstead.Fetch trigger values after SQL ServerOUTPUTclause.SQL Server OUTPUTstatements do not support fetching trigger generated values. This is a limitation of therenderOutputForSQLServerReturningClause. An additionalMERGEstatement can run a second query if (and only if) the primary key has been included in theOUTPUTclause.For details, see https://github.com/jOOQ/jOOQ/issues/4498. 
- 
withFetchTriggerValuesAfterReturningFetch trigger values after aRETURNINGclause in dialects that don't have native support for this.SQL Server OUTPUTclauses do not support fetching trigger generated values. Neither do SQLiteRETURNINGclauses. An additionalMERGEstatement can run a second query if (and only if) the primary key has been included in theOUTPUTclause.Trigger meta data is only available in jOOQ's commercial editions. If setting this flag to WHEN_NEEDEDin the jOOQ Open Source Edition, jOOQ will assume triggers are present.For details, see https://github.com/jOOQ/jOOQ/issues/4498. 
- 
withFetchIntermediateResultWhether to fetch data into intermediateResultinstances.By default, a ResultQueryproduces no intermediateResultinstances if they are not explicitly requested by the caller, e.g. by callingResultQuery.fetch(), or in the presence ofExecuteListenerinstances, which may require access toExecuteContext.result(). This default behaviour helps avoid unnecessary allocations of possibly large data structures.Using this flag, fetching of intermediate results can be turned off even when execute listeners are present, or turned on even if they're absent. 
- 
withDiagnosticsDuplicateStatementsWhether to run theDiagnosticsListener.duplicateStatements(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.
- 
withDiagnosticsDuplicateStatementsUsingTransformPatternsWhether to run theDiagnosticsListener.duplicateStatements(org.jooq.DiagnosticsContext)diagnostic with thetransformPatternsfeature activated.When transforming patterns, many more complex, duplicate SQL statements can be recognised than if simply parsing and re-rendering the statement. This flag turns on all transformation patterns, independently of their individual settings. Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. 
- 
withDiagnosticsMissingWasNullCallWhether to run theDiagnosticsListener.missingWasNullCall(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.
- 
withDiagnosticsRepeatedStatementsWhether to run theDiagnosticsListener.repeatedStatements(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.
- 
withDiagnosticsConsecutiveAggregationWhether to run theDiagnosticsListener.consecutiveAggregation(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. 
- 
withDiagnosticsConcatenationInPredicateWhether to run theDiagnosticsListener.concatenationInPredicate(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. 
- 
withDiagnosticsPossiblyWrongExpressionWhether to run theDiagnosticsListener.possiblyWrongExpression(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. 
- 
withDiagnosticsTooManyColumnsFetchedWhether to run theDiagnosticsListener.tooManyColumnsFetched(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.
- 
withDiagnosticsTooManyRowsFetchedWhether to run theDiagnosticsListener.tooManyRowsFetched(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.
- 
withDiagnosticsUnnecessaryWasNullCallWhether to run theDiagnosticsListener.unnecessaryWasNullCall(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.
- 
withDiagnosticsPatternsWhether to run the various pattern transformation diagnostics.transformPatternsallows for applying numerous pattern transformations, which can be turned on separately when running diagnostics. This flag overrides thetransformPatternsflag in the diagnostics context. Individual pattern flags still allow to enable / disable the pattern for diagnostics.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. 
- 
withDiagnosticsTrivialConditionWhether to run theDiagnosticsListener.trivialCondition(org.jooq.DiagnosticsContext)diagnostic.Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. 
- 
withDiagnosticsNullConditionWhether to run thediagnostic.invalid @linkorg.jooq.DiagnosticsListener#nullConditoin(org.jooq.DiagnosticsContext)Diagnostics are turned off if no Configuration.diagnosticsListenerProviders()are configured. Once configured, this diagnostic is turned on by default.This feature is available in the commercial distribution only. 
- 
withTransformPatternsTransform various syntax patterns to better versions, if possible.This flag enables the pattern transformation feature, which consists of several sub-flags that are all prefixed with "transformPatterns", e.g. transformPatternsTrim. While the sub-flags default to being enabled, and can be disabled on an individual basis, the global feature itself is disabled by default.This feature is available in the commercial distribution only. 
- 
withTransformPatternsLoggingActivate debug logging of thetransformPatternsfeature.
- 
withTransformPatternsUnnecessaryDistinctTransformSELECT DISTINCT a, b FROM t GROUP BY a, btoSELECT a, b FROM t GROUP BY a, b.The GROUP BYclause already removes duplicates, so if theDISTINCTclause contains at least all the columns fromGROUP BYthen it can be removed.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsUnnecessaryScalarSubqueryTransformSELECT (SELECT 1)toSELECT 1.Scalar subqueries that don't have any content other than a SELECTclause are unnecessary and can be removed.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsUnnecessaryInnerJoinTransformSELECT * FROM t INNER JOIN u ON TRUEtoSELECT * FROM t CROSS JOIN u.Some INNER JOINexpressions can be proven to be unnecessary.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsUnnecessaryGroupByExpressionsTransformSELECT a, b FROM t GROUP BY a, a, btoSELECT a, b FROM t GROUP BY a, b.Duplicate GROUP BYexpressions can be removed.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsUnnecessaryOrderByExpressionsTransformSELECT a, b FROM t ORDER BY a, a, btoSELECT a, b FROM t ORDER BY a, b.Duplicate ORDER BYexpressions can be removed.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsUnnecessaryExistsSubqueryClausesTransform[ NOT ] EXISTS (SELECT DISTINCT a, b FROM t ORDER BY c LIMIT d)to[ NOT ] EXISTS (SELECT 1 FROM t).In EXISTSsubqueries, quite a fewSELECTclauses are meaningless, and can thus be removed. These include:- SELECT(any projection can be ignored)
- DISTINCT
- ORDER BY
- LIMIT(except- LIMIT 0, in case of which- transformPatternsTrivialPredicatesapplies).
 To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsCountConstantTransformCOUNT(1)or any otherCOUNT(const)toCOUNT(*).There is no benefit to counting a constant expression. In fact, in some RDBMS, it might even be slightly slower, at least in benchmarks. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsTrimTransformLTRIM(RTRIM(x))orRTRIM(LTRIM(x))toTRIM(x).Historically, a few dialects did not implement TRIM(x)orTRIM(BOTH FROM x), so users worked around this by wrappingLTRIM()andRTRIM()with each other. Maintaining this is usually undesirable, so this transformation helps remove the unwanted wrapping.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsNotAndTransformNOT(p AND q)toNOT(p) OR NOT(q).This transformation normalises a predicate using De Morgan's rules. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsNotOrTransformNOT(p OR q)toNOT(p) AND NOT(q).This transformation normalises a predicate using De Morgan's rules. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsNotNotTransformNOT(NOT(x))tox.This transformation removes a redundant logic negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsNotComparisonTransformNOT (a != b)toa = b, and similar comparisons.This transformation removes a redundant logical negation from the DISTINCTpredicate.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsNotNotDistinctTransformNOT (a IS NOT DISTINCT FROM b)toa IS DISTINCT FROM b.This transformation removes a redundant logical negation from the DISTINCTpredicate.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsDistinctFromNullTransforma IS [ NOT ] DISTINCT FROM NULLtoa IS [ NOT ] NULL.This simplifies the much more verbose DISTINCTpredicate.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsNormaliseAssociativeOpsTransform(a + b) + (c + d)to((a + b) + c) + d.This transformation turns trees into lists, which greatly simplifies other tree traversal transformations. Some of those other transformations currently rely on this flag to be active. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsNormaliseInListSingleElementToComparisonTransformx IN (a)tox = aandx NOT IN (a)tox != a.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsNormaliseFieldCompareValueTransform1 = atoa = 1.This transformation inverses [op]invalid @linkTableFieldcomparisons, if they're not in that order.invalid @linkorg.jooq.impl.QOM.ValTo enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsNormaliseCoalesceToNvlTransform 2 argumentCOALESCE(a, b)toNVL(a, b).To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsOrEqToInTransformx = c1 OR x = c2tox IN (c1, c2).This transformation simplifies verbose ORpredicates into simplerINpredicates.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsAndNeToNotInTransformx != c1 AND x != c2tox NOT IN (c1, c2).This transformation simplifies verbose ANDpredicates into simplerNOT INpredicates.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsMergeOrComparisonTransformx = a OR x > atox >= a.This transformation merges multiple ORconnected comparisons to a single comparison using a simpler operator.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsMergeAndComparisonTransformx >= a AND x invalid input: '<'= atox = a.This transformation merges multiple ANDconnected comparisons to a single comparison using a simpler operator.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsMergeInListsTransformx IN (a, b, c) AND x IN (b, c, d)tox IN (b, c).This transformation merges multiple ORconnected comparisons to a single comparison using a simpler operator.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsMergeRangePredicatesTransformx >= a AND x invalid input: '<'= btox BETWEEN a AND b.This transformation merges multiple ANDconnected range predicates to a single comparison usingBETWEEN.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsMergeBetweenSymmetricPredicatesTransformx BETWEEN a AND b OR x BETWEEN b AND atox BETWEEN SYMMETRIC a AND b.This transformation merges multiple ORconnectedBETWEENpredicates to a single comparison usingBETWEEN SYMMETRIC.To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsCaseSearchedToCaseSimpleTransform a searchedCASE WHEN x = .. WHEN x = ..to a simpleCASE x WHEN … WHEN …expression.When a searched CASEexpression always compares the same column to a value, then it can be simplified, possibly unlocking further transformations that are available only to the simpleCASEexpression.This feature is available in the commercial distribution only. 
- 
withTransformPatternsCaseElseNullTransformCASE … ELSE NULLremoving theELSEclause.CASE WHEN x THEN y ELSE NULL ENDis equivalent toCASE WHEN x THEN y END.This feature is available in the commercial distribution only. 
- 
withTransformPatternsUnreachableCaseClausesTransformCASEby removing unreachable clauses.Case clauses can be proven to be unreachable, and thus removed: - CASE WHEN p THEN 1 WHEN TRUE THEN 2 WHEN q … ELSE … ENDis equivalent to- CASE WHEN p THEN 1 ELSE 2 END
- CASE WHEN p THEN 1 WHEN FALSE THEN 2 WHEN q .. ELSE .. ENDis equivalent to- CASE WHEN p THEN 1 WHEN q … ELSE … END
 This feature is available in the commercial distribution only. 
- 
withTransformPatternsUnreachableDecodeClausesTransformDECODEby removing unreachable clauses.DECODE clauses can be proven to be unreachable, and thus removed: - DECODE(a, b, 1, c, 2, b, 3)is equivalent to- DECODE(a, b, 1, c, 2)
- DECODE(a, b, 1, c, 2, b, 3, 4)is equivalent to- DECODE(a, b, 1, c, 2, 4)
 This feature is available in the commercial distribution only. 
- 
withTransformPatternsCaseDistinctToDecodeTransformCASE WHEN a IS NOT DISTINCT FROM b …to an equivalentDECODEfunction.When all WHENclauses of aCASEexpression use theDISTINCTpredicate, then theCASEexpression can be transformed into aDECODEfunction call:- CASE WHEN a IS NOT DISTINCT FROM b THEN 1 ENDis equivalent to- DECODE(a, b, 1)
- CASE WHEN a IS NOT DISTINCT FROM b THEN 1 ELSE 2 ENDis equivalent to- DECODE(a, b, 1, 2)
- CASE WHEN a IS NOT DISTINCT FROM b THEN 1 WHEN a IS NOT DISTINCT FROM c THEN 2 ENDis equivalent to- DECODE(a, b, 1, c, 2)
- CASE WHEN a IS NOT DISTINCT FROM b THEN 1 WHEN a IS NOT DISTINCT FROM c THEN 2 ELSE 3 ENDis equivalent to- DECODE(a, b, 1, c, 2, 3)
 This feature is available in the commercial distribution only. 
- 
withTransformPatternsCaseMergeWhenWhenTransformCASE WHEN a THEN x WHEN b THEN x ENDtoCASE WHEN a OR b THEN x END.Two consecutive WHENclauses can be merged, if their respectiveTHENclause is identical.This feature is available in the commercial distribution only. 
- 
withTransformPatternsCaseMergeWhenElseTransformCASE WHEN a THEN x WHEN b THEN y ELSE y ENDtoCASE WHEN a THEN x ELSE y END.The ultimate WHENclause can be merged with theELSE, if their respective result is identical. If theWHENclause is the onlyWHENclause, then the entireCASEexpression can be replaced by theELSEclause content.This feature is available in the commercial distribution only. 
- 
withTransformPatternsCaseToCaseAbbreviationTransformCASEexpressions to their respective abbreviations.Some CASEexpressions have a shorter abbreviated form, such asCOALESCE()orNULLIF().This feature is available in the commercial distribution only. 
- 
withTransformPatternsSimplifyCaseAbbreviationTransform complex predicates into simplerCASEabbreviations.Some predicates can be simplified into case abbreviations, such as, for example - a IS NULL OR COALESCE(a = b, FALSE)to- NULLIF(a, b) IS NULL
- a IS NOT NULL AND COALESCE(a != b, TRUE)to- NULLIF(a, b) IS NOT NULL
 This feature is available in the commercial distribution only. 
- 
withTransformPatternsFlattenCaseAbbreviationFlatten nestedCASEabbreviations such asNVLorCASE.Nested CASEabbreviations can be flattened, as such:- NVL(NVL(a, b), c)to- COALESCE(a, b, c)
- COALESCE(a, ..., COALESCE(b, ..., c), ..., d)to- COALESCE(a, …, b, …, c, ..., d)
 This feature is available in the commercial distribution only. 
- 
withTransformPatternsFlattenDecodeFlatten nestedDECODEfunctions.Nested DECODEfunctions can be flattened, as such:- DECODE(a, b, c, DECODE(a, d, e))to- DECODE(a, b, c, d, e)
 This feature is available in the commercial distribution only. 
- 
withTransformPatternsFlattenCaseTransformCASE … ELSE CASE …by flattening the nestedCASE.CASE WHEN a THEN b ELSE CASE WHEN c THEN d END ENDis equivalent toCASE WHEN a THEN b WHEN c THEN d END.This feature is available in the commercial distribution only. 
- 
withTransformPatternsTrivialCaseAbbreviationTransform trivial case abbreviations likeNVL(NULL, a)toa.This transformation removes any trivial case abbreviations, such as NVL(),COALESCE(),NULLIF(), etc.This feature is available in the commercial distribution only. 
- 
withTransformPatternsTrivialPredicatesTransform trivial predicates like1 = 1toTRUE.This transformation removes any trivial predicates. This feature is available in the commercial distribution only. 
- 
withTransformPatternsTrivialBitwiseOperationsTransform trivial bitwise comparisons likeBIT_OR(a, 0)toa.This transformation removes any trivial predicates. This feature is available in the commercial distribution only. 
- 
withTransformPatternsBitSetTransform bitwise operations to an equivalentBIT_SET(a, b)orBIT_SET(a, b, c)expression.This feature is available in the commercial distribution only. 
- 
withTransformPatternsBitGetTransform bitwise operations to an equivalentBIT_GET(a, b)expression.This feature is available in the commercial distribution only. 
- 
withTransformPatternsScalarSubqueryCountAsteriskGtZeroTransform predicates comparing scalar subqueries with a count(SELECT COUNT(*) …) > 0to equivalentEXISTS (SELECT 1 …).Scalar subqueries that count rows and whose count is compared to 0 can be transformed into equivalent, but likely cheaper to execute EXISTS queries. This feature is available in the commercial distribution only. 
- 
withTransformPatternsScalarSubqueryCountExpressionGtZeroTransform predicates comparing scalar subqueries with a count(SELECT COUNT(expr) …) > 0to equivalentEXISTS (SELECT 1 … WHERE expr IS NOT NULL).Scalar subqueries that count non-null expressions and whose count is compared to 0 can be transformed into equivalent, but likely cheaper to execute EXISTS queries. This feature is available in the commercial distribution only. 
- 
withTransformPatternsEmptyScalarSubqueryTransform empty scalar subqueries like(SELECT 1 WHERE FALSE)toNULL.Scalar subqueries that are guaranteed to produce no results can be replaced by a NULLvalue.This feature is available in the commercial distribution only. 
- 
withTransformPatternsNegNegTransform-(-(x))toxThis transformation removes a redundant arithmetic negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsBitNotBitNotTransform~(~(x))tox.This transformation removes a redundant bitwise negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsBitNotBitNandTransform~(bitnand(x, y))tobitand(x, y)and~(bitand(x, y)tobitnand(x, y).This transformation removes a redundant bitwise negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsBitNotBitNorTransform~(bitnor(x, y))tobitor(x, y)and~(bitor(x, y)tobitnor(x, y).This transformation removes a redundant bitwise negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsBitNotBitXNorTransform~(bitxnor(x, y))tobitxor(x, y)and~(bitxor(x, y)tobitxnor(x, y).This transformation removes a redundant bitwise negation. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsNullOnNullInputAny {org.jooq.impl.QOM.UReturnsNullOnNullInput} function or expression withNULLarguments can be replaced byNULL.There are many built-in SQL functions and operators with a RETURNS NULL ON NULL INPUTproperty, e.g.- ABS(NULL)
- MOD(NULL, 1)
- NULL + 1
 To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsIdempotentFunctionRepetitionTransform all repetitions of idempotent functions, such asUPPER(UPPER(s))toUPPER(s).Idempotent functions that are covered so far, include: - LTRIM(LTRIM(s))to- LTRIM(s)
- LTRIM(TRIM(s))to- TRIM(s)
- RTRIM(RTRIM(s))to- RTRIM(s)
- RTRIM(TRIM(s))to- TRIM(s)
- TRIM(LTRIM(s))to- TRIM(s)
- TRIM(RTRIM(s))to- TRIM(s)
- UPPER(UPPER(s))to- UPPER(s)
- LOWER(LOWER(s))to- LOWER(s)
 To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsArithmeticComparisonsTransforma + 1 = 2toa = 2 - 1, and other transformations.It is usually best to compare single columns with constants or expressions to encourage index usage. While function based indexes are possible in some RDBMS, ordinary indexes are more reusable and should be preferred. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsArithmeticExpressionsTransform1 / y * xtox / y, and other transformations.This transformation simplifies arithmetic expressions. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsTrigonometricFunctionsTransformSIN(x) / COS(x)toTAN(x), and other transformations.This transformation turns expanded trignonometric function definitions into their shorter equivalents. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsLogarithmicFunctionsTransformLN(value) / LN(base)toLOG(base, value), and other transformations.This transformation turns expanded logarithmic function definitions into their shorter equivalents. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsHyperbolicFunctionsTransform(EXP(x) - EXP(-x)) / 2toSINH(x), and other transformations.This transformation turns expanded hyperbolic function definitions into their shorter equivalents. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformPatternsInverseHyperbolicFunctionsTransformLN(x + SQRT(SQUARE(x) + 1))toASINH(x), and other transformations.This transformation turns expanded inverse hyperbolic function definitions into their shorter equivalents. To enable this feature, transformPatternsmust be enabled as well.This feature is available in the commercial distribution only. 
- 
withTransformInlineBindValuesForFieldComparisonsTransformQOM.CompareConditionand a few other types of condition to inline their bind values, in case they matchHistorically, prior to ANSI join syntax, joins were implemented by listing tables in the FROM clause and providing join predicates in the WHERE clause, possibly using vendor specific operators like (+)(Oracle, DB2) or*=(SQL Server) for outer join support. For backwards compatibility with older RDBMS versions, ANSI joins in jOOQ code may be converted to equivalent table lists in generated SQL using this flag.This flag has a limited implementation that supports inner joins (in most cases) and outer joins (only for simple comparison predicates). This feature is available in the commercial distribution only. 
- 
withTransformAnsiJoinToTableListsTransform ANSI join to table lists if possible.Historically, prior to ANSI join syntax, joins were implemented by listing tables in the FROM clause and providing join predicates in the WHERE clause, possibly using vendor specific operators like (+)(Oracle, DB2) or*=(SQL Server) for outer join support. For backwards compatibility with older RDBMS versions, ANSI joins in jOOQ code may be converted to equivalent table lists in generated SQL using this flag.This flag has a limited implementation that supports inner joins (in most cases) and outer joins (only for simple comparison predicates). This feature is available in the commercial distribution only. 
- 
withTransformInConditionSubqueryWithLimitToDerivedTable@Deprecated public Settings withTransformInConditionSubqueryWithLimitToDerivedTable(Transformation value) Deprecated.- 3.18.0 - [#14634] - The configuration of this transformation is deprecated. It will no longer be commercially available only, but apply also to the jOOQ Open Source Edition, when required.Transform a subquery from an IN condition with LIMIT to an equivalent derived table.This transformation works around a known MySQL limitation "ERROR 1235 (42000): This version of MySQL doesn't yet support 'LIMIT invalid input: '&' IN/ALL/ANY/SOME subquery'" This feature is available in the commercial distribution only. 
- 
withTransformQualifyTransform theQUALIFYclause to an equivalent derived table to filter on window functions.This feature is available in the commercial distribution only. 
- 
withTransformTableListsToAnsiJoinTransform table lists to ANSI join if possible.(Very) historically, prior to ANSI join syntax, joins were implemented by listing tables in the FROM clause and providing join predicates in the WHERE clause, possibly using vendor specific operators like (+)(Oracle, DB2) or*=(SQL Server) for outer join support. Migrating such join syntax is tedious. The jOOQ parser can parse the old syntax and this flag enables the transformation to ANSI join syntax.This feature is available in the commercial distribution only. 
- 
withTransformRownumTransformROWNUMexpressions to correspondingLIMITclauses orROW_NUMBER()expressions.In Oracle 11g and less, ROWNUMfiltering was the most popular way to paginate. This pseudo column is not supported in other RDBMS, and should be replaced in Oracle 12c by the FETCH clause orROW_NUMBER() OVER ()filtering. This transformation allows for replacing such a filter by equivalent SQL, if possible.This feature is available in the commercial distribution only. 
- 
withTransformUnneededArithmeticExpressionspublic Settings withTransformUnneededArithmeticExpressions(TransformUnneededArithmeticExpressions value) Transform arithmetic expressions on literals and bind variables.Arithmetic expressions may be implemented by the user, or arise from emulations from within jOOQ. Expressions on literals and bind variables could be evaluated in the client prior to generating SQL. This feature is available in the commercial distribution only. 
- 
withTransformGroupByColumnIndexTransformGROUP BY [column index]clauses by substituting the column index.Not all dialects support grouping by column index, which is a convenient but also a bit confusing feature of some dialects. jOOQ can transform the syntax into an equivalent syntax where the referenced SELECTexpression is duplicated into theGROUP BYclause.This feature is available in the commercial distribution only. 
- 
withTransformInlineCTETransform Common Table Expressions (CTE) by inlining theirWITHclause definition to wherever they're referenced.Non-recursive CTE are just syntax sugar for inline views (derived tables). When they're not supported natively, jOOQ can simply inline their definition to wherever they're referenced. This feature is available in the commercial distribution only. 
- 
withBackslashEscapingWhether string literals should be escaped with backslash.
- 
withParamTypeSpecify how bind variables are to be rendered.Possibilities include: - question marks - named parameters - named or inlined parameters - inlined parameters This value is overridden by statementType == STATIC_STATEMENT, in case of which, this defaults to INLINED 
- 
withParamCastModeWhether rendered bind values should be cast to their respective type.
- 
withStatementTypeThe type of statement that is to be executed.
- 
withInlineThresholdThe maximum number of allowed bind variables before inlining all values where0uses the dialect defaults:- SQLDialect.ACCESS: 768
- SQLDialect.ASE: 2000
- SQLDialect.INGRES: 1024
- SQLDialect.ORACLE: 32767
- SQLDialect.POSTGRES: 32767
- SQLDialect.SQLITE: 999
- SQLDialect.SQLSERVER: 2100
 
- 
withTransactionListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredTransactionListeners.
- 
withTransactionListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredTransactionListeners.
- 
withMigrationListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredMigrationListeners.
- 
withMigrationListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredMigrationListeners.
- 
withVisitListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredVisitListeners.
- 
withVisitListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredVisitListeners.
- 
withRecordListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredRecordListeners.
- 
withRecordListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredRecordListeners.
- 
withExecuteListenerStartInvocationOrderThe order of invocation for [action]start() methods registeredExecuteListeners.
- 
withExecuteListenerEndInvocationOrderThe order of invocation for [action]end() methods registeredExecuteListeners.
- 
withExecuteLoggingWhen set to true, this will add jOOQ's defaultLoggerListenerfor debug logging. This is meant for use in development only.
- 
withExecuteLoggingSQLExceptions[#14420] Whether constraint violations and otherSQLExceptionshould produce additional log information about the column name and data causing the problem. UnlikeexecuteLogging, this is meant for use in production as well as development. This feature is available only in commercial distributions.
- 
withDiagnosticsLoggingWhen set to true, this will add jOOQ's default logging DiagnosticsListeners.
- 
withDiagnosticsConnectionWhether to activate the DiagnosticsConnection, explicit byDEFAULT, implicit ifON, or turnedOFFentirely.
- 
withUpdateRecordVersionWhether store(), insert(), and update() methods should update the record version prior to the operation, for use withexecuteWithOptimisticLocking.
- 
withUpdateRecordTimestampWhether store(), insert(), and update() methods should update the record timestamp prior to the operation, for use withexecuteWithOptimisticLocking.
- 
withExecuteWithOptimisticLockingWhether store() and delete() methods should be executed with optimistic locking.
- 
withExecuteWithOptimisticLockingExcludeUnversionedWhether store() and delete() methods should be executed with optimistic locking also on "unversioned" tables, i.e. on tables that do not have a version and/or timestamp column.This flag has no effect when "executeWithOptimisticLocking" is turned off. 
- 
withAttachRecordsWhether fetched records should be attached to the fetching configuration.
- 
withInsertUnchangedRecordsWhetherTableRecord.insert()calls should be executed if the record is unchanged. This also affects theINSERTpart ofUpdatableRecord.store()andUpdatableRecord.merge()calls.
- 
withUpdateUnchangedRecordsWhetherUpdatableRecord.update()calls should be executed if the record is unchanged. This also affects theUPDATEpart ofUpdatableRecord.store()andUpdatableRecord.merge()calls.
- 
withUpdatablePrimaryKeysWhether primary key values are deemed to be "updatable" in jOOQ.Setting this to "true" will allow for updating primary key values through UpdatableRecord.store() and UpdatableRecord.update(). 
- 
withReflectionCachingWhether reflection information should be cached in the configuration.
- 
withCacheRecordMappersWhether record mappers should be cached in the configuration.
- 
withCacheParsingConnectionWhether parsing connection translations should be cached in the configuration.
- 
withCacheParsingConnectionLRUCacheSizeThe default implementation of the ParsingConnection cache's LRU cache size.
- 
withCachePreparedStatementInLoaderWhether JDBCPreparedStatementinstances should be cached in loader API.
- 
withThrowExceptionsA strategy defining how exceptions from the database / JDBC driver should be propagated
- 
withFetchWarningsWhether warnings should be fetched after each query execution.
- 
withFetchServerOutputSizeWhether server output should be fetched after each query execution.
- 
withReturnIdentityOnUpdatableRecordWhether calls to store(), insert() and update() should return the identity column.
- 
withReturnDefaultOnUpdatableRecordWhether calls to store(), insert() and update() should return values for columns that areDataType.defaulted().
- 
withReturnComputedOnUpdatableRecordWhether calls to store(), insert() and update() should return values for columns that areDataType.computed().
- 
withReturnAllOnUpdatableRecordWhether calls to store(), insert() and update() should return all columns, not just identity columns.Do note that only few databases support this feature. It is supported only in case the INSERT's or UPDATE's RETURNING clause is fully supported, also for non-IDENTITY columns. 
- 
withReturnRecordToPojoWhether calls to store(), insert(), update(), and delete() that are called on an UpdatableRecord that is created from a POJO (e.g. in a DAO) should return all Record values to the POJO, including IDENTITY values, and ifreturnAllOnUpdatableRecordis active, also other values.
- 
withMapJPAAnnotationsWhether JPA annotations should be considered by the DefaultRecordMapper.
- 
withMapRecordComponentParameterNamesWhether constructor parameter names obtained from theRecordcomponent names should be considered by the DefaultRecordMapper.
- 
withMapConstructorPropertiesParameterNamesWhether constructor parameter names obtained from theConstructorPropertiesannotation should be considered by the DefaultRecordMapper.
- 
withMapConstructorParameterNamesWhether constructor parameter names obtained via reflection in Java 8+ should be considered by the DefaultRecordMapper. This flag has no effect in Java 6 or 7.
- 
withMapConstructorParameterNamesInKotlinWhether constructor parameter names obtained via reflection in Kotlin should be considered by the DefaultRecordMapper. This flag has no effect in Java.
- 
withQueryPoolableThe default JDBC poolable property that should be applied to all jOOQ queries, for which no specific poolable flag was specified.
- 
withQueryTimeoutThe default JDBC queryTimeout property that should be applied to all jOOQ queries, for which no specific queryTimeout was specified.
- 
withMaxRowsThe default JDBC maxRows property that should be applied to all jOOQ queries, for which no specific maxRows value was specified.
- 
withFetchSizeThe default JDBC fetchSize property that should be applied to all jOOQ queries, for which no specific fetchSize value was specified.
- 
withBatchSizeA property specifying a batch size that should be applied to all automatically createdBatchedConnectioninstances.
- 
withDebugInfoOnStackTrace[#5570] Whether exception stack traces should be enhanced with additional debug information.
- 
withInListPadding[#5600] Whether IN lists in IN predicates should be padded to powers of inListPadBase (default 2).
- 
withInListPadBase[#7095] The base to use to calculate the powers of when applying in list padding.
- 
withDelimiter[#5826] The delimiter character to be used to delimit statements in batches.
- 
withEmulateOnDuplicateKeyUpdateOnPrimaryKeyOnly[#6462] Use only the primary key to emulate MySQL's INSERT .. ON DUPLICATE KEY UPDATE statement. In MySQL, the statement considers all unique keys for duplicates to apply an update rather than an insert. Earlier versions of jOOQ considered only the PRIMARY KEY. This flag can be turned on to maintain backwards compatibility.
- 
withEmulateMultiset[#3884] HowMULTISETsupport should be emulated.
- 
withEmulateComputedColumns[#13418] Whether computed columns should be emulated in the client.This can be useful if a schema was generated using a dialect that supports computed columns, but it is deployed on an RDBMS that does not. 
- 
withExecuteUpdateWithoutWhere[#6771] Specifies whether UPDATE statements are allowed to be executed lacking a WHERE clause. This has no effect on rendering the statements SQL string.
- 
withExecuteDeleteWithoutWhere[#6771] Specifies whether DELETE statements are allowed to be executed lacking a WHERE clause. This has no effect on rendering the statements SQL string.
- 
withInterpreterDialect[#7337] The dialect that should be used to interpret SQL DDL statements.SQLDialect.DEFAULTmeans that jOOQ interprets the SQL itself. Any other dialect (if supported) will be interpreted on an actual JDBC connection.
- 
withInterpreterNameLookupCaseSensitivitypublic Settings withInterpreterNameLookupCaseSensitivity(InterpreterNameLookupCaseSensitivity value) [#9633] The case sensitivity of identifiers used when interpreting SQL DDL statements.
- 
withInterpreterLocaleThe Locale to be used with any interpreter locale dependent logic, defaulting togetLocale().
- 
withInterpreterDelayForeignKeyDeclarationsUsing this flag, the interpreter will be able to delay the addition of foreign key declarations until the end of the interpretation run.
- 
withMetaIncludeSystemIndexesTheMetaimplementation that is backed byDatabaseMetaDatadoes not produce system generated indexes on constraints, by default.
- 
withMetaIncludeSystemSequencesTheMetaimplementation that is backed byDatabaseMetaDatadoes not produce system generated sequences, by default.
- 
withMigrationHistorySchemaThe database schema where the migration history is located.
- 
withMigrationHistorySchemaCreateSchemaIfNotExistsWhethergetMigrationHistorySchema()should be created if it doesn't exist.
- 
withMigrationDefaultSchemaThe default schema whose unqualified objects that are included in the migration.
- 
withMigrationSchemataCreateSchemaIfNotExistsWhethergetMigrationSchemata()should be created if they don't exist.
- 
withMigrationAllowsUndoWhether migrations are allowed to be executed in inverse order.This is a potentially destructive feature, which should not be turned on in production. It is useful mostly to quickly switch between branches in a development environment. This feature is available only in commercial distributions. 
- 
withMigrationRevertUntrackedWhether migrations revert any untracked changes in the schemas that are being migrated.This is a potentially destructive feature, which should not be turned on in production. It is useful mostly to quickly revert any elements created in a development environment. This feature is available only in commercial distributions. 
- 
withMigrationAutoBaselineWhether to automatically existing schemas that are not yet managed by jOOQ Migrations.
- 
withMigrationAutoVerificationWhether a migration automatically runs a verification first.
- 
withMigrationIgnoreDefaultTimestampPrecisionDiffsVariousmigrateTo()methods (e.g.Meta.migrateTo(org.jooq.Meta)) ignore the difference betweenTIMESTAMPandTIMESTAMP(6), if 6 is the default precision for timestamps on the configured dialect.
- 
withLocaleThe Locale to be used with any locale dependent logic if there is not a more specific locale available. More specific locales include e.g.getRenderLocale(),getParseLocale(), orgetInterpreterLocale().
- 
withParseDialect[#7337] The input dialect that should be chosen to disambiguate ambiguous SQL syntax.
- 
withParseLocaleThe Locale to be used with any parser locale dependent logic, defaulting togetLocale().
- 
withParseDateFormatThe date format to use when parsing functions whose behaviour depends on some session date format, such as NLS_DATE_FORMAT in Oracle
- 
withParseTimestampFormatThe timestamp format to use when parsing functions whose behaviour depends on some session date format, such as NLS_TIMESTAMP_FORMAT in Oracle
- 
withParseNamedParamPrefixThe prefix to use for named parameters in parsed SQL.Named parameter syntax defaults to :name(such as supported by Oracle, JPA, Spring), but vendor specific parameters may look differently. This flag can be used to determine the prefix to be used by named parameters, such as@for SQL Server's@nameor$for PostgreSQL's$namewhen parsing SQL."Named indexed" parameters can be obtained in the same way by specifingy ParamType#NAMEDand not providing a name to parameters, resulting in:1or@1or$1, etc.
- 
withParseNameCase[#7337] The default name case for parsed identifiers.
- 
withParseWithMetaLookups[#7163] Whether the parser should perform meta lookups in the Configuration's MetaProvider.
- 
withParseAppendMissingTableReferencesTransform the parsed SQL to append missing table references to the query'sFROMorUSINGclause, if applicable.Teradata (and possibly others) allow for referencing tables that are not listed in the FROMclause, such asSELECT t.* FROM t WHERE t.i = u.i. This transformation is executed in the parser, to produceSELECT t.* FROM t, u WHERE t.i = u.i, instead. By default, it is active when the input dialect supports this syntax.This feature is available in the commercial distribution only. 
- 
withParseSetCommands[#9780] Whether commands of the typeSET key = valueshould be parsed rather than ignored.
- 
withParseUnsupportedSyntax[#5917] Whether the parser should accept unsupported (but known) syntax.
- 
withParseUnknownFunctions[#7344] Whether the parser should accept unknown functions.
- 
withParseIgnoreCommercialOnlyFeatures[#13109] Whether the parser of the jOOQ Open Source Edition should ignore commercial only features, rather than failing.
- 
withParseIgnoreComments[#8325] Whether the parser should ignore content between ignore comment tokens.
- 
withParseIgnoreCommentStart[#8325] The ignore comment start token
- 
withParseIgnoreCommentStop[#8325] The ignore comment stop token
- 
withParseRetainCommentsBetweenQueries[#12538] Whether the parser should retain comments and whitespace between queries when parsing multiple queries throughParser.parse(String).jOOQ's query object model doesn't have a way to represent comments or other whitespace, and as such, the parser simply skips them by default. However, it may be desirable to retain comments before or in between top level queries, when parsing multiple such queries in a script. Comments inside of queries (including procedural statements) are still not supported. 
- 
withParseMetaDefaultExpressions[#8469] Whether to parse default expressions retrieved fromDatabaseMetaData.
- 
withParseMetaViewSources[#8469] Whether to parse view sources retrieved fromDatabaseMetaData.
- 
withReadonlyTableRecordInsert[#9864] The behaviour when trying to insert into readonly columns usingTableRecord.insert().
- 
withReadonlyUpdatableRecordUpdate[#9864] The behaviour when trying to update a readonly column usingUpdatableRecord.update().
- 
withReadonlyInsert
- 
withReadonlyUpdate
- 
withApplyWorkaroundFor7962[#7963] Apply workaround for ORA-04043 when inserting into Oracle tables with qualified, quoted identifiers, and fetching generated keys
- 
withWarnOnStaticTypeRegistryAccess[#15286] The warning level when the deprecated static type registry was accessed by legacy code.
- 
withInterpreterSearchPath
- 
withInterpreterSearchPath
- 
withInterpreterSearchPath
- 
withMigrationSchemata
- 
withMigrationSchemata
- 
withMigrationSchemata
- 
withParseSearchPath
- 
withParseSearchPath
- 
withParseSearchPath
- 
appendTo- Specified by:
- appendToin interface- XMLAppendable
 
- 
toString
- 
equals
- 
hashCodepublic int hashCode()
- 
clone
 
- 
RenderKeywordCaseinstead.