Package org.hibernate.community.dialect
Class SybaseASELegacyDialect
java.lang.Object
org.hibernate.dialect.Dialect
org.hibernate.dialect.AbstractTransactSQLDialect
org.hibernate.community.dialect.SybaseLegacyDialect
org.hibernate.community.dialect.SybaseASELegacyDialect
- All Implemented Interfaces:
org.hibernate.boot.model.FunctionContributor,org.hibernate.boot.model.TypeContributor,org.hibernate.exception.spi.ConversionContext
A SQL dialect for Sybase Adaptive Server Enterprise 11.9 and above.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.hibernate.dialect.Dialect
org.hibernate.dialect.Dialect.SizeStrategy, org.hibernate.dialect.Dialect.SizeStrategyImpl -
Field Summary
Fields inherited from class org.hibernate.community.dialect.SybaseLegacyDialect
jtdsDriverFields inherited from class org.hibernate.dialect.Dialect
CLOSED_QUOTE, FALSE_STRING_VALUES, LEGACY_LOB_MERGE_STRATEGY, LOG_BASE2OF10, NEW_LOCATOR_LOB_MERGE_STRATEGY, QUOTE, STANDARD_MULTI_KEY_LOAD_SIZING_STRATEGY, STREAM_XFER_LOB_MERGE_STRATEGY, TRUE_STRING_VALUES -
Constructor Summary
ConstructorsConstructorDescriptionSybaseASELegacyDialect(org.hibernate.dialect.DatabaseVersion version) SybaseASELegacyDialect(org.hibernate.engine.jdbc.dialect.spi.DialectResolutionInfo info) -
Method Summary
Modifier and TypeMethodDescriptionappendLockHint(org.hibernate.LockOptions mode, String tableName) org.hibernate.exception.spi.SQLExceptionConversionDelegateprotected StringcolumnType(int sqlTypeCode) voidcontributeTypes(org.hibernate.boot.model.TypeContributions typeContributions, org.hibernate.service.ServiceRegistry serviceRegistry) org.hibernate.dialect.aggregate.AggregateSupportintgetDual()intlongorg.hibernate.dialect.pagination.LimitHandlerorg.hibernate.dialect.lock.spi.LockingSupportintintprotected intSybase ASE doesn't support thegenerate_seriesfunction orlateralrecursive CTEs, so it has to be emulated with thexmltableandreplicatefunctions.intintorg.hibernate.dialect.Dialect.SizeStrategyorg.hibernate.sql.ast.SqlAstTranslatorFactoryorg.hibernate.exception.spi.ViolatedConstraintNameExtractorvoidinitializeFunctionRegistry(org.hibernate.boot.model.FunctionContributions functionContributions) booleanprotected voidregisterColumnTypes(org.hibernate.boot.model.TypeContributions typeContributions, org.hibernate.service.ServiceRegistry serviceRegistry) protected voidbooleanThe Sybase ASEBITtype does not allow null values, so we don't use it.booleanbooleanbooleanbooleanbooleanbooleanbooleanbooleanbooleanbooleantimestampaddPattern(org.hibernate.query.common.TemporalUnit unit, TemporalType temporalType, org.hibernate.query.sqm.IntervalType intervalType) timestampdiffPattern(org.hibernate.query.common.TemporalUnit unit, TemporalType fromTemporalType, TemporalType toTemporalType) toQuotedIdentifier(String name) Methods inherited from class org.hibernate.community.dialect.SybaseLegacyDialect
appendDatetimeFormat, appendDateTimeLiteral, appendDateTimeLiteral, appendDateTimeLiteral, buildIdentifierHelper, canCreateSchema, castPattern, extractPattern, getCallableStatementSupport, getCurrentSchemaCommand, getDmlTargetColumnQualifierSupport, getDriverKind, getInExpressionCountLimit, getNameQualifierSupport, getNationalizationSupport, getNullColumnString, getSqmTranslatorFactory, getUniqueDelegate, resolveSqlTypeDescriptor, resolveSqlTypeLength, supportsFractionalTimestampArithmetic, supportsFromClauseInUpdate, supportsNamedParameters, supportsNullPrecedence, supportsRowValueConstructorSyntax, supportsRowValueConstructorSyntaxInInList, supportsRowValueConstructorSyntaxInQuantifiedPredicates, supportsStandardCurrentTimestampFunction, supportsWithClause, translateExtractFieldMethods inherited from class org.hibernate.dialect.AbstractTransactSQLDialect
appendBinaryLiteral, applyLocksToSql, doesReadCommittedCauseWritersToBlockReaders, doesRepeatableReadCauseReadersToBlockWriters, getAddColumnString, getCurrentTimestampSelectString, getDefaultStatementBatchSize, getFallbackSqmInsertStrategy, getFallbackSqmMutationStrategy, getForUpdateString, getIdentityColumnSupport, getLocalTemporaryTableStrategy, getLockingClauseStrategy, getNullOrdering, getPreferredSqlTypeCodeForBoolean, getResultSet, getSelectGUIDString, getSupportedTemporaryTableKind, getTemporaryTableAfterUseAction, getTemporaryTableBeforeUseAction, getTemporaryTableCreateCommand, isCurrentTimestampSelectStringCallable, qualifyIndexName, registerResultSetOutParameter, replaceLtrimRtrim, requiresCastForConcatenatingNonStrings, supportsCurrentTimestampSelection, supportsExistsInSelect, supportsTupleDistinctCounts, trimPatternMethods inherited from class org.hibernate.dialect.Dialect
addPartitionKeyToPrimaryKey, addSqlHintOrComment, addUseIndexQueryHint, appendArrayLiteral, appendBooleanValueString, appendCheckConstraintOptions, appendIntervalLiteral, appendIntervalLiteral, appendLiteral, appendUUIDLiteral, augmentPhysicalTableTypes, augmentRecognizedTableTypes, buildLockingClauseStrategy, buildOptimisticForceIncrementStrategy, buildOptimisticStrategy, buildPessimisticForceIncrementStrategy, buildPessimisticReadStrategy, buildPessimisticWriteStrategy, buildReadStrategy, buildStringToBooleanCast, buildStringToBooleanCastDecode, buildStringToBooleanDecode, canBatchTruncate, canCreateCatalog, canDisableConstraints, castType, checkVersion, closeQuote, contribute, contributeFunctions, createOptionalTableUpdateOperation, currentLocalTime, currentLocalTimestamp, currentTimestampWithTimeZone, defaultScrollMode, determineDatabaseVersion, doesRoundTemporalOnOverflow, dropConstraints, equivalentTypes, escapeComment, forceLobAsLastValue, generatedAs, getAddColumnSuffixString, getAddForeignKeyConstraintString, getAddForeignKeyConstraintString, getAddPrimaryKeyConstraintString, getAlterColumnTypeString, getAlterTableString, getArrayTypeName, getAuxiliaryDatabaseObjectExporter, getBatchLoadSizingStrategy, getBeforeDropStatement, getCascadeConstraintsString, getCaseInsensitiveLike, getCatalogSeparator, getCheckCondition, getCheckCondition, getCheckCondition, getCheckCondition, getCheckCondition, getCheckCondition, getCheckConstraintString, getColumnAliasExtractor, getColumnComment, getCreateCatalogCommand, getCreateEnumTypeCommand, getCreateEnumTypeCommand, getCreateIndexString, getCreateIndexTail, getCreateMultisetTableString, getCreateSchemaCommand, getCreateTableString, getCreateTemporaryTableColumnAnnotation, getCreateUserDefinedTypeExtensionsString, getCreateUserDefinedTypeKindString, getCrossReferenceParentTableFilter, getDefaultDecimalPrecision, getDefaultIntervalSecondScale, getDefaultLobLength, getDefaultNonContextualLobCreation, getDefaultOrdinalityColumnName, getDefaultProperties, getDefaultTimestampPrecision, getDefaultUseGetGeneratedKeys, getDisableConstraintsStatement, getDisableConstraintStatement, getDropCatalogCommand, getDropEnumTypeCommand, getDropEnumTypeCommand, getDropForeignKeyString, getDropSchemaCommand, getDropTableString, getDropUniqueKeyString, getEnableConstraintsStatement, getEnableConstraintStatement, getEnumTypeDeclaration, getEnumTypeDeclaration, getFallbackSchemaManagementTool, getForeignKeyExporter, getForUpdateNowaitString, getForUpdateNowaitString, getForUpdateSkipLockedString, getForUpdateSkipLockedString, getForUpdateString, getForUpdateString, getForUpdateString, getForUpdateString, getForUpdateString, getForUpdateString, getForUpdateString, getFromDualForSelectOnly, getFunctionalDependencyAnalysisSupport, getGlobalTemporaryTableStrategy, getGroupBySelectItemReferenceStrategy, getHqlTranslator, getIndexExporter, getKeywords, getLobMergeStrategy, getLockingStrategy, getLockingStrategy, getLockRowIdentifier, getLowercaseFunction, getMaxNVarcharCapacity, getMaxNVarcharLength, getMaxVarbinaryCapacity, getMaxVarbinaryLength, getMaxVarcharCapacity, getMinimumSupportedVersion, getMultiKeyLoadSizingStrategy, getNativeIdentifierGeneratorStrategy, getNativeParameterMarkerStrategy, getNativeValueGenerationStrategy, getNoColumnsInsertString, getNullColumnString, getParameterCountLimit, getPersistentTemporaryTableStrategy, getPessimisticLockStyle, getQueryHintString, getQueryHintString, getQuerySequencesString, getReadLockString, getReadLockString, getReadLockString, getReadLockString, getReadRowLockStrategy, getResultSet, getResultSet, getRowIdColumnString, getSchemaNameResolver, getSelectClauseNullString, getSelectClauseNullString, getSequenceExporter, getSequenceInformationExtractor, getSequenceSupport, getTableCleaner, getTableComment, getTableExporter, getTableMigrator, getTemporaryTableCreateOptions, getTemporaryTableDdlTransactionHandling, getTemporaryTableDropCommand, getTemporaryTableExporter, getTemporaryTableTruncateCommand, getTimeoutInSeconds, getTimeZoneSupport, getTruncateTableStatement, getTruncateTableStatements, getUniqueKeyExporter, getUserDefinedTypeComment, getUserDefinedTypeExporter, getVersion, getWriteLockString, getWriteLockString, getWriteLockString, getWriteLockString, getWriteRowLockStrategy, hasAlterTable, hasDataTypeBeforeGeneratedAs, hasSelfReferentialForeignKeyBug, initDefaultProperties, isEmptyStringTreatedAsNull, isJdbcLogWarningsEnabledByDefault, isLob, openQuote, ordinal, prependComment, quote, quoteCollation, registerKeyword, registerKeywords, registerResultSetOutParameter, requiresColumnListInCreateView, requiresFloatCastingOfIntegerDivision, requiresParensForTupleCounts, requiresParensForTupleDistinctCounts, resolveSqlTypeCode, resolveSqlTypeCode, rowId, rowIdSqlType, stripsTrailingSpacesFromChar, supportsAlterColumnType, supportsArrayConstructor, supportsBatchUpdates, supportsBindAsCallableArgument, supportsBindingNullForSetObject, supportsBindingNullSqlTypeForSetNull, supportsCaseInsensitiveLike, supportsCircularCascadeDeleteConstraints, supportsColumnCheck, supportsCommentOn, supportsConflictClauseForInsertCTE, supportsDuplicateSelectItemsInQueryGroup, supportsFetchClause, supportsFilterClause, supportsForUpdate, supportsIfExistsAfterAlterTable, supportsIfExistsAfterConstraintName, supportsIfExistsAfterTableName, supportsIfExistsAfterTypeName, supportsIfExistsBeforeConstraintName, supportsIfExistsBeforeTableName, supportsIfExistsBeforeTypeName, supportsInsertReturning, supportsInsertReturningGeneratedKeys, supportsInsertReturningRowId, supportsIsTrue, supportsJdbcConnectionLobCreation, supportsJoinInMutationStatementSubquery, supportsLateral, supportsLockTimeouts, supportsMaterializedLobAccess, supportsNationalizedMethods, supportsNestedSubqueryCorrelation, supportsNestedWithClause, supportsNoColumnsInsert, supportsNonQueryWithCTE, supportsNoWait, supportsOffsetInSubquery, supportsOrdinalSelectItemReference, supportsOuterJoinForUpdate, supportsPredicateAsExpression, supportsRecursiveCTE, supportsRecursiveCycleClause, supportsRecursiveCycleUsingClause, supportsRecursiveSearchClause, supportsRefCursors, supportsResultSetPositionQueryMethodsOnForwardOnlyCursor, supportsRowConstructor, supportsRowValueConstructorDistinctFromSyntax, supportsRowValueConstructorGtLtSyntax, supportsRowValueConstructorSyntaxInInSubQuery, supportsSimpleQueryGrouping, supportsSkipLocked, supportsStandardArrays, supportsSubqueryInSelect, supportsSubqueryOnMutatingTable, supportsSubselectAsInPredicateLHS, supportsTableCheck, supportsTableOptions, supportsTemporalLiteralOffset, supportsTemporaryTablePrimaryKey, supportsTemporaryTables, supportsTruncateWithCast, supportsTupleCounts, supportsUnboundedLobLocatorMaterialization, supportsUnionAll, supportsUpdateReturning, supportsUserDefinedTypes, supportsValuesList, supportsValuesListForInsert, supportsWait, supportsWindowFunctions, supportsWithClauseInSubquery, toBooleanValueString, toString, transformSelectString, translateDurationField, unquoteGetGeneratedKeys, useArrayForMultiValuedParameters, useConnectionToCreateLob, useCrossReferenceForeignKeys, useFollowOnLocking, useInputStreamToInsertBlob, useMaterializedLobWhenCapacityExceeded
-
Constructor Details
-
SybaseASELegacyDialect
public SybaseASELegacyDialect() -
SybaseASELegacyDialect
public SybaseASELegacyDialect(org.hibernate.dialect.DatabaseVersion version) -
SybaseASELegacyDialect
public SybaseASELegacyDialect(org.hibernate.engine.jdbc.dialect.spi.DialectResolutionInfo info)
-
-
Method Details
-
columnType
- Overrides:
columnTypein classorg.hibernate.dialect.AbstractTransactSQLDialect
-
registerColumnTypes
protected void registerColumnTypes(org.hibernate.boot.model.TypeContributions typeContributions, org.hibernate.service.ServiceRegistry serviceRegistry) - Overrides:
registerColumnTypesin classorg.hibernate.dialect.Dialect
-
getPreferredSqlTypeCodeForArray
public int getPreferredSqlTypeCodeForArray()- Overrides:
getPreferredSqlTypeCodeForArrayin classorg.hibernate.dialect.Dialect
-
getMaxVarcharLength
public int getMaxVarcharLength()- Overrides:
getMaxVarcharLengthin classorg.hibernate.dialect.Dialect
-
initializeFunctionRegistry
public void initializeFunctionRegistry(org.hibernate.boot.model.FunctionContributions functionContributions) - Overrides:
initializeFunctionRegistryin classSybaseLegacyDialect
-
getMaximumSeriesSize
protected int getMaximumSeriesSize()Sybase ASE doesn't support thegenerate_seriesfunction orlateralrecursive CTEs, so it has to be emulated with thexmltableandreplicatefunctions. -
isAnsiNullOn
public boolean isAnsiNullOn() -
getFloatPrecision
public int getFloatPrecision()- Overrides:
getFloatPrecisionin classorg.hibernate.dialect.Dialect
-
getDoublePrecision
public int getDoublePrecision()- Overrides:
getDoublePrecisionin classorg.hibernate.dialect.Dialect
-
getSizeStrategy
public org.hibernate.dialect.Dialect.SizeStrategy getSizeStrategy()- Overrides:
getSizeStrategyin classSybaseLegacyDialect
-
getSqlAstTranslatorFactory
public org.hibernate.sql.ast.SqlAstTranslatorFactory getSqlAstTranslatorFactory()- Overrides:
getSqlAstTranslatorFactoryin classSybaseLegacyDialect
-
getAggregateSupport
public org.hibernate.dialect.aggregate.AggregateSupport getAggregateSupport()- Overrides:
getAggregateSupportin classorg.hibernate.dialect.Dialect
-
supportsBitType
public boolean supportsBitType()The Sybase ASEBITtype does not allow null values, so we don't use it.- Overrides:
supportsBitTypein classorg.hibernate.dialect.Dialect- Returns:
- false
-
supportsDistinctFromPredicate
public boolean supportsDistinctFromPredicate()- Overrides:
supportsDistinctFromPredicatein classorg.hibernate.dialect.Dialect
-
contributeTypes
public void contributeTypes(org.hibernate.boot.model.TypeContributions typeContributions, org.hibernate.service.ServiceRegistry serviceRegistry) - Overrides:
contributeTypesin classSybaseLegacyDialect
-
currentDate
- Overrides:
currentDatein classorg.hibernate.dialect.Dialect
-
currentTime
- Overrides:
currentTimein classorg.hibernate.dialect.Dialect
-
currentTimestamp
- Overrides:
currentTimestampin classorg.hibernate.dialect.Dialect
-
getFractionalSecondPrecisionInNanos
public long getFractionalSecondPrecisionInNanos()- Overrides:
getFractionalSecondPrecisionInNanosin classorg.hibernate.dialect.Dialect
-
timestampaddPattern
public String timestampaddPattern(org.hibernate.query.common.TemporalUnit unit, TemporalType temporalType, org.hibernate.query.sqm.IntervalType intervalType) - Overrides:
timestampaddPatternin classSybaseLegacyDialect
-
timestampdiffPattern
public String timestampdiffPattern(org.hibernate.query.common.TemporalUnit unit, TemporalType fromTemporalType, TemporalType toTemporalType) - Overrides:
timestampdiffPatternin classSybaseLegacyDialect
-
registerDefaultKeywords
protected void registerDefaultKeywords()- Overrides:
registerDefaultKeywordsin classorg.hibernate.dialect.Dialect
-
supportsCascadeDelete
public boolean supportsCascadeDelete()- Overrides:
supportsCascadeDeletein classorg.hibernate.dialect.Dialect
-
getMaxAliasLength
public int getMaxAliasLength()- Overrides:
getMaxAliasLengthin classorg.hibernate.dialect.Dialect
-
getMaxIdentifierLength
public int getMaxIdentifierLength()- Overrides:
getMaxIdentifierLengthin classSybaseLegacyDialect
-
getLockingSupport
public org.hibernate.dialect.lock.spi.LockingSupport getLockingSupport()- Overrides:
getLockingSupportin classSybaseLegacyDialect
-
supportsOrderByInSubquery
public boolean supportsOrderByInSubquery()- Overrides:
supportsOrderByInSubqueryin classorg.hibernate.dialect.Dialect
-
supportsUnionInSubquery
public boolean supportsUnionInSubquery()- Overrides:
supportsUnionInSubqueryin classorg.hibernate.dialect.Dialect
-
supportsPartitionBy
public boolean supportsPartitionBy()- Overrides:
supportsPartitionByin classorg.hibernate.dialect.AbstractTransactSQLDialect
-
getTableTypeString
- Overrides:
getTableTypeStringin classorg.hibernate.dialect.Dialect
-
supportsExpectedLobUsagePattern
public boolean supportsExpectedLobUsagePattern()- Overrides:
supportsExpectedLobUsagePatternin classorg.hibernate.dialect.Dialect
-
supportsLobValueChangePropagation
public boolean supportsLobValueChangePropagation()- Overrides:
supportsLobValueChangePropagationin classorg.hibernate.dialect.Dialect
-
appendLockHint
- Overrides:
appendLockHintin classorg.hibernate.dialect.AbstractTransactSQLDialect
-
toQuotedIdentifier
- Overrides:
toQuotedIdentifierin classorg.hibernate.dialect.Dialect
-
getViolatedConstraintNameExtractor
public org.hibernate.exception.spi.ViolatedConstraintNameExtractor getViolatedConstraintNameExtractor()- Specified by:
getViolatedConstraintNameExtractorin interfaceorg.hibernate.exception.spi.ConversionContext- Overrides:
getViolatedConstraintNameExtractorin classorg.hibernate.dialect.Dialect
-
buildSQLExceptionConversionDelegate
public org.hibernate.exception.spi.SQLExceptionConversionDelegate buildSQLExceptionConversionDelegate()- Overrides:
buildSQLExceptionConversionDelegatein classorg.hibernate.dialect.Dialect
-
getLimitHandler
public org.hibernate.dialect.pagination.LimitHandler getLimitHandler()- Overrides:
getLimitHandlerin classorg.hibernate.dialect.Dialect
-
getDual
- Overrides:
getDualin classorg.hibernate.dialect.Dialect
-
supportsIntersect
public boolean supportsIntersect()- Overrides:
supportsIntersectin classorg.hibernate.dialect.Dialect
-
supportsJoinsInDelete
public boolean supportsJoinsInDelete()- Overrides:
supportsJoinsInDeletein classorg.hibernate.dialect.Dialect
-
supportsCrossJoin
public boolean supportsCrossJoin()- Overrides:
supportsCrossJoinin classorg.hibernate.dialect.Dialect
-