Class OracleDialect

All Implemented Interfaces:
Dialect

public class OracleDialect extends Oracle11Dialect
A dialect for Oracle Database.
  • Constructor Details

  • Method Details

    • supportsIdentity

      public boolean supportsIdentity()
      Description copied from interface: Dialect
      Determines whether this dialect supports the IDENTITY column.

      An IDENTITY column is a column that automatically generates a unique value for each row when data is inserted. The exact implementation varies by database system.

      Specified by:
      supportsIdentity in interface Dialect
      Overrides:
      supportsIdentity in class Oracle11Dialect
      Returns:
      true if this dialect supports IDENTITY columns, false otherwise
    • supportsAutoGeneratedKeys

      public boolean supportsAutoGeneratedKeys()
      Description copied from interface: Dialect
      Determines whether this dialect supports retrieving auto-generated keys via Statement.getGeneratedKeys().

      This feature allows retrieving values that were automatically generated during an insert operation, such as identity column values, without executing a separate query.

      Specified by:
      supportsAutoGeneratedKeys in interface Dialect
      Overrides:
      supportsAutoGeneratedKeys in class StandardDialect
      Returns:
      true if this dialect supports retrieving auto-generated keys, false otherwise
    • supportsMultiRowInsertStatement

      public boolean supportsMultiRowInsertStatement()
      Description copied from interface: Dialect
      Determines whether this dialect supports multi-row insert statements (bulk inserts).

      Multi-row insert statements allow inserting multiple rows in a single SQL statement, which can significantly improve performance when inserting large amounts of data.

      The default implementation returns true.

      Specified by:
      supportsMultiRowInsertStatement in interface Dialect
      Overrides:
      supportsMultiRowInsertStatement in class Oracle11Dialect
      Returns:
      true if this dialect supports multi-row insert statements, false otherwise
    • supportsUpsertEmulationWithMergeStatement

      public boolean supportsUpsertEmulationWithMergeStatement()
      Description copied from interface: Dialect
      Determines whether this dialect supports upsert emulation using MERGE statements.

      An upsert operation (update or insert) can be emulated using MERGE statements in some database systems. This method indicates whether the dialect supports this approach.

      The default implementation returns false.

      Returns:
      true if this dialect supports upsert emulation with MERGE statements, false otherwise
    • getAutoGeneratedKeysType

      public AutoGeneratedKeysType getAutoGeneratedKeysType()
      Description copied from interface: Dialect
      Returns the type of the auto generated keys.
      Specified by:
      getAutoGeneratedKeysType in interface Dialect
      Overrides:
      getAutoGeneratedKeysType in class StandardDialect
      Returns:
      the type of the auto generated keys
    • getUpsertAssembler

      public UpsertAssembler getUpsertAssembler(UpsertAssemblerContext context)
      Description copied from interface: Dialect
      Returns the UpsertAssembler implementation for the given context.
      Specified by:
      getUpsertAssembler in interface Dialect
      Overrides:
      getUpsertAssembler in class StandardDialect
      Parameters:
      context - the UpsertAssemblerContext object
      Returns:
      the UpsertAssembler object for the given context
    • getMultiInsertAssembler

      public <ENTITY> MultiInsertAssembler getMultiInsertAssembler(MultiInsertAssemblerContext<ENTITY> context)
      Description copied from interface: Dialect
      Provides an implementation of MultiInsertAssembler based on the given context.
      Specified by:
      getMultiInsertAssembler in interface Dialect
      Overrides:
      getMultiInsertAssembler in class StandardDialect
      Type Parameters:
      ENTITY - the type of the entity to be handled by the assembler
      Parameters:
      context - the context that holds the information required to create the MultiInsertAssembler
      Returns:
      an instance of MultiInsertAssembler specific to the provided entity context
    • supportsReturning

      public boolean supportsReturning()
      Description copied from interface: Dialect
      Determines if this dialect supports the SQL RETURNING clause in database operations.

      The RETURNING clause allows a DML statement (INSERT, UPDATE, DELETE) to return data from rows that were affected by the operation. This feature is particularly useful for retrieving auto-generated values or updated columns in a single database operation, without requiring a separate SELECT statement.

      The default implementation returns true, but dialect implementations for databases that don't support this feature should override this method to return false.

      Returns:
      true if the RETURNING clause is supported by this dialect, false otherwise