objectQuotingStrategy Attribute

The objectQuotingStrategy attribute is used to control how object names are quoted in the SQL files generated by Liquibase and used in calls to the database. You can specify it as an attribute of the <databaseChangeLog> tag in your changelog or in individual changesets.

Uses

The database treats unquoted object names in SQL as case-insensitive by default. However, if you prefer to use case-sensitive object names or are using a reserved word like “table” as an object name, you must quote the names.

In Liquibase, there are three possible values for the objectQuotingStrategy attribute:

  • LEGACY – The default value. Does not quote objects unless the database specifies that they must be quoted, usually including reserved words and names with hyphens. In PostgreSQL databases, mixed-case names will also be quoted.
  • QUOTE_ALL_OBJECTS – Every object gets quoted. For example, person becomes "person".
  • QUOTE_ONLY_RESERVED_WORDS – The same logic as LEGACY, but without mixed-case objects in PostgreSQL databases.

Setting the objectQuotingStrategy Attribute