Available in versions: Dev (3.21) | Latest (3.20) | 3.19 | 3.18 | 3.17 | 3.16 | 3.15 | 3.14 | 3.13

This documentation is for the unreleased development version of jOOQ. Click on the above version links to get this documentation for a supported version of jOOQ.

Interpreter Configuration

Applies to ✅ Open Source Edition   ✅ Express Edition   ✅ Professional Edition   ✅ Enterprise Edition

The SQL Interpreter API ships with a variety of settings that govern its behaviour. These settings include:

  • interpreterDialect: The interpreter input dialect. This dialect is used to decide whether DDL interpretation should be done on an actual in-memory database of a specific type, or using jOOQ's built in DDL interpretation.
  • interpreterDelayForeignKeyDeclarations: Whether the interpreter should delay the application of foreign key declarations (in case of which forward references are possible).
  • interpreterLocale: The locale to use for things like case insensitive comparisons.
  • interpreterNameLookupCaseSensitivity: The identifier case sensitivity that should be applied when interpreting SQL, depending on whether identifiers are quoted or not.
  • interpreterQuotedNames: Specify how the interpreter handles quoting of interpreted identifiers.
  • interpreterSearchPath: The search path for unqualified schema objects used by the interpreter.
  • interpreterWithMetaLookups: Whether the interpreter should perform meta lookups in already interpreted meta data. Setting this to IGNORE_ON_FAILURES effectively adds IF EXISTS or IF NOT EXISTS clauses to all statements and subclauses.

Example configuration

Settings settings = new Settings()
    .withInterpreterDialect(H2)                           // Defaults to DEFAULT
    .withInterpreterDelayForeignKeyDeclarations(true)     // Defaults to false
    .withInterpreterLocale(Locale.forLanguageTag("de"))   // Defaults to Locale.getDefault()
    .withInterpreterQuotedNames(ALWAYS)                   // Defaults to EXPLICIT_DEFAULT_QUOTED
    .withInterpreterNameLookupCaseSensitivity(NEVER)      // Defaults to WHEN_QUOTED
    .withInterpreterSearchPath(...)                       // Defaults to an empty list
    .withInterpreterWithMetaLookups(IGNORE_ON_FAILURE);   // Defaults to THROW_ON_FAILURE

Feedback

Do you have any feedback about this page? We'd love to hear it!

The jOOQ Logo