New versions: Dev (3.14) | Latest (3.13)

Interpreter Configuration

Available in ✅ 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.
  • interpreterSearchPath: The search path for unqualified schema objects used by the interpreter.

Example configuration

Settings settings = new Settings()
    .withInterpreterDialect(H2)                          // Defaults to DEFAULT
    .withInterpreterDelayForeignKeyDeclarations(true)    // Defaults to false
    .withInterpreterLocale(Locale.forLanguageTag("de"))  // Defaults to Locale.getDefault()
    .withInterpreterNameLookupCaseSensitivity(NEVER)     // Defaults to WHEN_QUOTED
    .withInterpreterSearchPath(...)                      // Defaults to an empty list
The jOOQ Logo