public class Oracle9iDialect extends Oracle8iDialect
CLOSED_QUOTE, DEFAULT_BATCH_SIZE, LEGACY_LOB_MERGE_STRATEGY, NEW_LOCATOR_LOB_MERGE_STRATEGY, NO_BATCH, QUOTE, STANDARD_DEFAULT_BATCH_LOAD_SIZING_STRATEGY, STREAM_XFER_LOB_MERGE_STRATEGY
Constructor and Description |
---|
Oracle9iDialect() |
Modifier and Type | Method and Description |
---|---|
CaseFragment |
createCaseFragment()
Map case support to the Oracle DECODE function.
|
String |
getCurrentTimestampSelectString()
Retrieve the command used to retrieve the current timestamp from the
database.
|
String |
getCurrentTimestampSQLFunctionName()
The name of the database-specific SQL function for retrieving the
current timestamp.
|
String |
getForUpdateString()
Get the string to append to SELECT statements to acquire locks
for this dialect.
|
LimitHandler |
getLimitHandler()
Returns the delegate managing LIMIT clause.
|
String |
getLimitString(String sql,
boolean hasOffset)
Apply s limit clause to the query.
|
String |
getReadLockString(int timeout)
Get the string to append to SELECT statements to acquire READ locks
for this dialect.
|
String |
getSelectClauseNullString(int sqlType)
Given a
Types type code, determine an appropriate
null value to use in a select clause. |
String |
getWriteLockString(int timeout)
Get the string to append to SELECT statements to acquire WRITE locks
for this dialect.
|
protected void |
registerCharacterTypeMappings() |
protected void |
registerDateTimeTypeMappings() |
boolean |
supportsRowValueConstructorSyntaxInInList()
HHH-4907, I don't know if oracle 8 supports this syntax, so I'd think it is better add this
method here.
|
boolean |
supportsTupleDistinctCounts()
Does this dialect support `count(distinct a,b)`?
|
bindLimitParametersInReverseOrder, buildSQLExceptionConversionDelegate, canCreateSchema, createOuterJoinFragment, dropConstraints, forceLobAsLastValue, forUpdateOfColumns, getAddColumnString, getBasicSelectClauseNullString, getCallableStatementSupport, getCascadeConstraintsString, getCreateSequenceString, getCreateSequenceString, getCrossJoinSeparator, getCurrentSchemaCommand, getDefaultMultiTableBulkIdStrategy, getDropSequenceString, getForUpdateNowaitString, getForUpdateNowaitString, getForUpdateString, getInExpressionCountLimit, getMaxAliasLength, getNotExpression, getQueryHintString, getQuerySequencesString, getResultSet, getSelectGUIDString, getSelectSequenceNextValString, getSequenceNextValString, getSqlTypeDescriptorOverride, getViolatedConstraintNameExtracter, isCurrentTimestampSelectStringCallable, registerDefaultProperties, registerFunctions, registerLargeObjectTypeMappings, registerNumericTypeMappings, registerResultSetOutParameter, registerReverseHibernateTypeMappings, statementType, supportsCommentOn, supportsCurrentTimestampSelection, supportsEmptyInList, supportsExistsInSelect, supportsLimit, supportsNoWait, supportsPartitionBy, supportsPooledSequences, supportsSequences, supportsUnionAll, useFollowOnLocking, useMaxForLimit
addSqlHintOrComment, appendLockHint, appendLockHint, applyLocksToSql, areStringComparisonsCaseInsensitive, augmentRecognizedTableTypes, bindLimitParametersFirst, buildIdentifierHelper, buildSQLExceptionConverter, canCreateCatalog, cast, cast, cast, closeQuote, contributeTypes, convertToFirstRowValue, defaultScrollMode, doesReadCommittedCauseWritersToBlockReaders, doesRepeatableReadCauseReadersToBlockWriters, escapeLiteral, forceLimitUsage, getAddColumnSuffixString, getAddForeignKeyConstraintString, getAddForeignKeyConstraintString, getAddPrimaryKeyConstraintString, getAddUniqueConstraintString, getAlterTableString, getAuxiliaryDatabaseObjectExporter, getCaseInsensitiveLike, getCastTypeName, getColumnAliasExtractor, getColumnComment, getCreateCatalogCommand, getCreateMultisetTableString, getCreateSchemaCommand, getCreateSequenceStrings, getCreateSequenceStrings, getCreateTableString, getDefaultBatchLoadSizingStrategy, getDefaultProperties, getDialect, getDialect, getDropCatalogCommand, getDropForeignKeyString, getDropSchemaCommand, getDropSequenceStrings, getDropTableString, getForeignKeyExporter, getForUpdateSkipLockedString, getForUpdateSkipLockedString, getForUpdateString, getForUpdateString, getForUpdateString, getFunctions, getHibernateTypeName, getHibernateTypeName, getIdentityColumnSupport, getIndexExporter, getKeywords, getLimitString, getLobMergeStrategy, getLockingStrategy, getLowercaseFunction, getNameQualifierSupport, getNativeIdentifierGeneratorClass, getNativeIdentifierGeneratorStrategy, getNoColumnsInsertString, getNullColumnString, getQueryHintString, getReadLockString, getResultSet, getResultSet, getSchemaNameResolver, getSequenceExporter, getSequenceInformationExtractor, getTableComment, getTableExporter, getTableTypeString, getTypeName, getTypeName, getUniqueDelegate, getUniqueKeyExporter, getWriteLockString, hasAlterTable, hasSelfReferentialForeignKeyBug, inlineLiteral, isJdbcLogWarningsEnabledByDefault, isLegacyLimitHandlerBehaviorEnabled, isLockTimeoutParameterized, isTypeNameRegistered, openQuote, prependComment, qualifyIndexName, quote, registerColumnType, registerColumnType, registerFunction, registerHibernateType, registerHibernateType, registerKeyword, registerResultSetOutParameter, remapSqlTypeDescriptor, renderOrderByElement, replaceResultVariableInOrderByClauseWithPosition, requiresCastingOfParametersInSelectClause, requiresParensForTupleDistinctCounts, supportsBindAsCallableArgument, supportsCascadeDelete, supportsCaseInsensitiveLike, supportsCircularCascadeDeleteConstraints, supportsColumnCheck, supportsExpectedLobUsagePattern, supportsIfExistsAfterAlterTable, supportsIfExistsAfterConstraintName, supportsIfExistsAfterTableName, supportsIfExistsBeforeConstraintName, supportsIfExistsBeforeTableName, supportsLimitOffset, supportsLobValueChangePropogation, supportsLockTimeouts, supportsNamedParameters, supportsNationalizedTypes, supportsNonQueryWithCTE, supportsNotNullUnique, supportsOuterJoinForUpdate, supportsParametersInInsertSelect, supportsResultSetPositionQueryMethodsOnForwardOnlyCursor, supportsRowValueConstructorSyntax, supportsSkipLocked, supportsSubqueryOnMutatingTable, supportsSubselectAsInPredicateLHS, supportsTableCheck, supportsTupleCounts, supportsTuplesInSubqueries, supportsUnboundedLobLocatorMaterialization, supportsUnique, supportsUniqueConstraintInCreateAlterTable, supportsValuesList, supportsVariableLimit, toBooleanValueString, toString, transformSelectString, useFollowOnLocking, useInputStreamToInsertBlob
protected void registerCharacterTypeMappings()
registerCharacterTypeMappings
in class Oracle8iDialect
protected void registerDateTimeTypeMappings()
registerDateTimeTypeMappings
in class Oracle8iDialect
public CaseFragment createCaseFragment()
Oracle8iDialect
CaseFragment
strategy responsible
for handling this dialect's variations in how CASE statements are
handled.createCaseFragment
in class Oracle8iDialect
CaseFragment
strategy.public LimitHandler getLimitHandler()
Dialect
getLimitHandler
in class Oracle8iDialect
public String getLimitString(String sql, boolean hasOffset)
Dialect
variable
limit clauses when they support limits. Thus, when building the
select command we do not actually need to know the limit or the offest
since we will just be using placeholders.
Here we do still pass along whether or not an offset was specified
so that dialects not supporting offsets can generate proper exceptions.
In general, dialects will override one or the other of this method and
Dialect.getLimitString(String, int, int)
.getLimitString
in class Oracle8iDialect
sql
- The query to which to apply the limit.hasOffset
- Is the query requesting an offset?public String getSelectClauseNullString(int sqlType)
Dialect
Types
type code, determine an appropriate
null value to use in a select clause.
One thing to consider here is that certain databases might
require proper casting for the nulls here since the select here
will be part of a UNION/UNION ALL.getSelectClauseNullString
in class Oracle8iDialect
sqlType
- The Types
type code.public String getCurrentTimestampSelectString()
Dialect
getCurrentTimestampSelectString
in class Oracle8iDialect
public String getCurrentTimestampSQLFunctionName()
Dialect
getCurrentTimestampSQLFunctionName
in class Oracle8iDialect
public String getForUpdateString()
Dialect
getForUpdateString
in class Dialect
public String getWriteLockString(int timeout)
Dialect
getWriteLockString
in class Dialect
timeout
- in milliseconds, -1 for indefinite wait and 0 for no wait.public String getReadLockString(int timeout)
Dialect
getReadLockString
in class Dialect
timeout
- in milliseconds, -1 for indefinite wait and 0 for no wait.public boolean supportsRowValueConstructorSyntaxInInList()
row values
,
does it offer such support in IN lists as well?
For example, "... where (FIRST_NAME, LAST_NAME) IN ( (?, ?), (?, ?) ) ..."supportsRowValueConstructorSyntaxInInList
in class Dialect
public boolean supportsTupleDistinctCounts()
Dialect
supportsTupleDistinctCounts
in class Dialect
Copyright © 2019 JBoss by Red Hat. All rights reserved.