- All Implemented Interfaces:
Dialect
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic classstatic classstatic classNested classes/interfaces inherited from class org.seasar.doma.jdbc.dialect.Oracle11Dialect
Oracle11Dialect.Oracle11CriteriaBuilder, Oracle11Dialect.Oracle11ExpressionFunctions, Oracle11Dialect.Oracle11JdbcMappingVisitor, Oracle11Dialect.Oracle11ScriptBlockContext, Oracle11Dialect.Oracle11SqlLogFormattingVisitor, Oracle11Dialect.OracleResultSetTypeNested classes/interfaces inherited from class org.seasar.doma.jdbc.dialect.StandardDialect
StandardDialect.StandardCriteriaBuilder, StandardDialect.StandardExpressionFunctions, StandardDialect.StandardJdbcMappingVisitor, StandardDialect.StandardScriptBlockContext, StandardDialect.StandardSqlLogFormattingVisitor -
Field Summary
Fields inherited from class org.seasar.doma.jdbc.dialect.Oracle11Dialect
RESULT_SET, UNIQUE_CONSTRAINT_VIOLATION_ERROR_CODEFields inherited from class org.seasar.doma.jdbc.dialect.StandardDialect
CLOSE_QUOTE, expressionFunctions, jdbcMappingVisitor, OPEN_QUOTE, sqlLogFormattingVisitor, UNIQUE_CONSTRAINT_VIOLATION_STATE_CODES -
Constructor Summary
ConstructorsConstructorDescriptionOracleDialect(ExpressionFunctions expressionFunctions) OracleDialect(JdbcMappingVisitor jdbcMappingVisitor) OracleDialect(JdbcMappingVisitor jdbcMappingVisitor, SqlLogFormattingVisitor sqlLogFormattingVisitor) OracleDialect(JdbcMappingVisitor jdbcMappingVisitor, SqlLogFormattingVisitor sqlLogFormattingVisitor, ExpressionFunctions expressionFunctions) OracleDialect(SqlLogFormattingVisitor sqlLogFormattingVisitor) -
Method Summary
Modifier and TypeMethodDescriptionReturns the type of the auto generated keys.<ENTITY> MultiInsertAssemblergetMultiInsertAssembler(MultiInsertAssemblerContext<ENTITY> context) Provides an implementation ofMultiInsertAssemblerbased on the given context.getUpsertAssembler(UpsertAssemblerContext context) Returns the UpsertAssembler implementation for the given context.booleanDetermines whether this dialect supports retrieving auto-generated keys viaStatement.getGeneratedKeys().booleanDetermines whether this dialect supports the IDENTITY column.booleanDetermines whether this dialect supports multi-row insert statements (bulk inserts).booleanDetermines if this dialect supports the SQL RETURNING clause in database operations.booleanDetermines whether this dialect supports upsert emulation using MERGE statements.Methods inherited from class org.seasar.doma.jdbc.dialect.Oracle11Dialect
createScriptBlockContext, getCriteriaBuilder, getName, getResultSetType, getScriptBlockDelimiter, getSequenceNextValSql, isUniqueConstraintViolated, supportsAutoIncrementWhenInsertingMultipleRows, supportsBatchUpdateResults, supportsModOperator, supportsResultSetReturningAsOutParameter, supportsSelectForUpdate, supportsSequence, toForUpdateSqlNode, toPagingSqlNodeMethods inherited from class org.seasar.doma.jdbc.dialect.StandardDialect
applyQuote, getCauseSQLException, getDeleteAssembler, getErrorCode, getExpressionFunctions, getIdentityReservationSql, getIdentitySelectSql, getInsertAssembler, getJdbcMappingVisitor, getRootCause, getSqlLogFormattingVisitor, getSQLState, getUpdateAssembler, includesIdentityColumn, removeQuote, supportsIdentityReservation, toCountCalculatingSqlNode, toCountGettingSqlNode, transformSelectSqlNode, transformSelectSqlNodeForGettingCountMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.seasar.doma.jdbc.dialect.Dialect
includesIdentityColumn, supportsAliasInDeleteClause, supportsAliasInDeleteStatement, supportsAliasInUpdateClause, supportsAliasInUpdateStatement, supportsBatchExecutionReturningGeneratedValues, supportsParenthesesForSetOperands
-
Constructor Details
-
OracleDialect
public OracleDialect() -
OracleDialect
-
OracleDialect
-
OracleDialect
-
OracleDialect
public OracleDialect(JdbcMappingVisitor jdbcMappingVisitor, SqlLogFormattingVisitor sqlLogFormattingVisitor) -
OracleDialect
public OracleDialect(JdbcMappingVisitor jdbcMappingVisitor, SqlLogFormattingVisitor sqlLogFormattingVisitor, ExpressionFunctions expressionFunctions)
-
-
Method Details
-
supportsIdentity
public boolean supportsIdentity()Description copied from interface:DialectDetermines 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:
supportsIdentityin interfaceDialect- Overrides:
supportsIdentityin classOracle11Dialect- Returns:
trueif this dialect supports IDENTITY columns,falseotherwise
-
supportsAutoGeneratedKeys
public boolean supportsAutoGeneratedKeys()Description copied from interface:DialectDetermines whether this dialect supports retrieving auto-generated keys viaStatement.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:
supportsAutoGeneratedKeysin interfaceDialect- Overrides:
supportsAutoGeneratedKeysin classStandardDialect- Returns:
trueif this dialect supports retrieving auto-generated keys,falseotherwise
-
supportsMultiRowInsertStatement
public boolean supportsMultiRowInsertStatement()Description copied from interface:DialectDetermines 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:
supportsMultiRowInsertStatementin interfaceDialect- Overrides:
supportsMultiRowInsertStatementin classOracle11Dialect- Returns:
trueif this dialect supports multi-row insert statements,falseotherwise
-
supportsUpsertEmulationWithMergeStatement
public boolean supportsUpsertEmulationWithMergeStatement()Description copied from interface:DialectDetermines 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:
trueif this dialect supports upsert emulation with MERGE statements,falseotherwise
-
getAutoGeneratedKeysType
Description copied from interface:DialectReturns the type of the auto generated keys.- Specified by:
getAutoGeneratedKeysTypein interfaceDialect- Overrides:
getAutoGeneratedKeysTypein classStandardDialect- Returns:
- the type of the auto generated keys
-
getUpsertAssembler
Description copied from interface:DialectReturns the UpsertAssembler implementation for the given context.- Specified by:
getUpsertAssemblerin interfaceDialect- Overrides:
getUpsertAssemblerin classStandardDialect- 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:DialectProvides an implementation ofMultiInsertAssemblerbased on the given context.- Specified by:
getMultiInsertAssemblerin interfaceDialect- Overrides:
getMultiInsertAssemblerin classStandardDialect- 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 theMultiInsertAssembler- Returns:
- an instance of
MultiInsertAssemblerspecific to the provided entity context
-
supportsReturning
public boolean supportsReturning()Description copied from interface:DialectDetermines 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 returnfalse.- Returns:
trueif the RETURNING clause is supported by this dialect,falseotherwise
-