Interface IdentifierSupport

All Known Implementing Classes:
AbstractSybaseDialect, AbstractTransactSQLDialect, AzureSQLServerDialect, CockroachDB202SpatialDialect, CockroachDialect, DB2Dialect, DB2iDialect, DB2SpatialDialect, DB2zDialect, Dialect, GenericDialect, H2Dialect, HANADialect, HANASpatialDialect, HSQLDialect, MariaDBDialect, MySQL56InnoDBSpatialDialect, MySQL56SpatialDialect, MySQL5InnoDBSpatialDialect, MySQL5SpatialDialect, MySQLDialect, MySQLSpatialDialect, OracleDialect, OracleSpatial10gDialect, OracleSpatialSDO10gDialect, PostgisPG10Dialect, PostgisPG93Dialect, PostgisPG94Dialect, PostgisPG95Dialect, PostgresPlusDialect, PostgreSQLDialect, SpannerDialect, SpannerPostgreSQLDialect, SQLServerDialect, SqlServerSpatialDialect, SybaseASEDialect, SybaseDialect

@SPI({USE,IMPLEMENT,SUPPLY}) public interface IdentifierSupport

Defines database identifier quoting, limits, and helper construction.

Override the smallest operation which represents the database variation. Build an environment-specific helper only from the supplied request, and do not retain its boot-scoped builder or metadata view.

Since:
8.0
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    Build and supply the configured identifier helper from the stable JDBC metadata snapshot and selected keyword strategy.
    default char
    Return the character which closes a quoted identifier.
    default int
    Return the safe maximum length of a generated SQL alias, including room for Hibernate's generated suffix.
    default int
    Return the database's maximum identifier length.
    default char
    Return the character which opens a quoted identifier.
    default String
    quote(String name)
    Convert a correctly paired Hibernate backtick marker to the database's identifier delimiters.
    default String
    Render a collation name used in a column definition.
    default String
    Render a complete quoted identifier, preserving null.
  • Method Details

    • openQuote

      default char openQuote()
      Return the character which opens a quoted identifier.
    • closeQuote

      default char closeQuote()
      Return the character which closes a quoted identifier.
    • toQuotedIdentifier

      @Nullable default String toQuotedIdentifier(@Nullable String name)
      Render a complete quoted identifier, preserving null.
    • quote

      @Nullable default String quote(@Nullable String name)
      Convert a correctly paired Hibernate backtick marker to the database's identifier delimiters. Return every other value unchanged.
    • quoteCollation

      default String quoteCollation(String collation)
      Render a collation name used in a column definition.
    • getMaxAliasLength

      default int getMaxAliasLength()
      Return the safe maximum length of a generated SQL alias, including room for Hibernate's generated suffix.
    • getMaxIdentifierLength

      default int getMaxIdentifierLength()
      Return the database's maximum identifier length.
    • buildIdentifierHelper

      @SPI({USE,IMPLEMENT,SUPPLY}) default IdentifierHelper buildIdentifierHelper(IdentifierHelperBuildRequest request)

      Build and supply the configured identifier helper from the stable JDBC metadata snapshot and selected keyword strategy.

      This inherited implementation initializes identifier casing, keywords, and namespace support from the request. Invoke it before replacing any of those values with authoritative provider settings, then build the final helper from the same builder. Settings which this implementation does not initialize may be applied before invoking it. If builder configuration cannot express a database rule, decorate the final helper with DelegatingIdentifierHelper. Do not retain the request, builder, or metadata view.

      Since:
      8.0
      See Also: