Package org.hibernate.community.dialect
Class TeradataDialect
- java.lang.Object
-
- org.hibernate.dialect.Dialect
-
- org.hibernate.community.dialect.TeradataDialect
-
- All Implemented Interfaces:
org.hibernate.boot.model.FunctionContributor,org.hibernate.boot.model.TypeContributor,org.hibernate.exception.spi.ConversionContext
- Direct Known Subclasses:
Teradata14Dialect
public class TeradataDialect extends org.hibernate.dialect.DialectA dialect for the Teradata database created by MCR as part of the dialect certification process.
-
-
Constructor Summary
Constructors Constructor Description TeradataDialect()TeradataDialect(org.hibernate.dialect.DatabaseVersion version)TeradataDialect(org.hibernate.engine.jdbc.dialect.spi.DialectResolutionInfo info)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringapplyLocksToSql(String sql, org.hibernate.LockOptions aliasedLockOptions, Map<String,String[]> keyColumnNames)protected StringcolumnType(int sqlTypeCode)booleandoesReadCommittedCauseWritersToBlockReaders()booleandoesRepeatableReadCauseReadersToBlockWriters()StringgetAddColumnString()StringgetCreateMultisetTableString()intgetDefaultDecimalPrecision()intgetDefaultStatementBatchSize()org.hibernate.query.sqm.mutation.spi.SqmMultiTableInsertStrategygetFallbackSqmInsertStrategy(org.hibernate.metamodel.mapping.EntityMappingType rootEntityDescriptor, org.hibernate.metamodel.spi.RuntimeModelCreationContext runtimeModelCreationContext)org.hibernate.query.sqm.mutation.spi.SqmMultiTableMutationStrategygetFallbackSqmMutationStrategy(org.hibernate.metamodel.mapping.EntityMappingType rootEntityDescriptor, org.hibernate.metamodel.spi.RuntimeModelCreationContext runtimeModelCreationContext)StringgetForUpdateString()Does this dialect support theFOR UPDATEsyntax?longgetFractionalSecondPrecisionInNanos()org.hibernate.dialect.identity.IdentityColumnSupportgetIdentityColumnSupport()org.hibernate.tool.schema.spi.Exporter<org.hibernate.mapping.Index>getIndexExporter()intgetInExpressionCountLimit()org.hibernate.dialect.pagination.LimitHandlergetLimitHandler()intgetMaxAliasLength()intgetMaxIdentifierLength()intgetMaxVarbinaryLength()intgetMaxVarcharLength()intgetPreferredSqlTypeCodeForBoolean()StringgetReadLockString(int timeout)ResultSetgetResultSet(CallableStatement cs)StringgetSelectClauseNullString(int sqlType, org.hibernate.type.spi.TypeConfiguration typeConfiguration)org.hibernate.sql.ast.SqlAstTranslatorFactorygetSqlAstTranslatorFactory()org.hibernate.dialect.temptable.TemporaryTableKindgetSupportedTemporaryTableKind()StringgetTemporaryTableCreateOptions()org.hibernate.exception.spi.ViolatedConstraintNameExtractorgetViolatedConstraintNameExtractor()StringgetWriteLockString(int timeout)voidinitializeFunctionRegistry(org.hibernate.boot.model.FunctionContributions functionContributions)protected voidregisterDefaultKeywords()intregisterResultSetOutParameter(CallableStatement statement, int col)org.hibernate.type.descriptor.jdbc.JdbcTyperesolveSqlTypeDescriptor(String columnTypeName, int jdbcTypeCode, int precision, int scale, org.hibernate.type.descriptor.jdbc.spi.JdbcTypeRegistry jdbcTypeRegistry)booleansupportsBindAsCallableArgument()booleansupportsCascadeDelete()booleansupportsCircularCascadeDeleteConstraints()booleansupportsExistsInSelect()booleansupportsLobValueChangePropagation()booleansupportsLockTimeouts()booleansupportsNoWait()booleansupportsOrderByInSubquery()booleansupportsTupleDistinctCounts()booleansupportsUnboundedLobLocatorMaterialization()booleansupportsWait()booleansupportsWindowFunctions()StringtimestampaddPattern(org.hibernate.query.sqm.TemporalUnit unit, TemporalType temporalType, org.hibernate.query.sqm.IntervalType intervalType)StringtimestampdiffPattern(org.hibernate.query.sqm.TemporalUnit unit, TemporalType fromTemporalType, TemporalType toTemporalType)booleanuseConnectionToCreateLob()booleanuseFollowOnLocking(String sql, org.hibernate.query.spi.QueryOptions queryOptions)booleanuseInputStreamToInsertBlob()-
Methods inherited from class org.hibernate.dialect.Dialect
addSqlHintOrComment, appendArrayLiteral, appendBinaryLiteral, appendBooleanValueString, appendDatetimeFormat, appendDateTimeLiteral, appendDateTimeLiteral, appendDateTimeLiteral, appendIntervalLiteral, appendLiteral, appendLockHint, appendUUIDLiteral, augmentPhysicalTableTypes, augmentRecognizedTableTypes, buildIdentifierHelper, buildSQLExceptionConversionDelegate, buildStringToBooleanCast, buildStringToBooleanCastDecode, buildStringToBooleanDecode, canBatchTruncate, canCreateCatalog, canCreateSchema, canDisableConstraints, castPattern, castType, checkVersion, closeQuote, contribute, contributeFunctions, contributeTypes, createOptionalTableUpdateOperation, currentDate, currentLocalTime, currentLocalTimestamp, currentTime, currentTimestamp, currentTimestampWithTimeZone, defaultScrollMode, doesRoundTemporalOnOverflow, dropConstraints, equivalentTypes, escapeComment, extractPattern, forceLobAsLastValue, generatedAs, getAddColumnSuffixString, getAddForeignKeyConstraintString, getAddForeignKeyConstraintString, getAddPrimaryKeyConstraintString, getAggregateSupport, getAlterColumnTypeString, getAlterTableString, getArrayTypeName, getAuxiliaryDatabaseObjectExporter, getBatchLoadSizingStrategy, getBeforeDropStatement, getCallableStatementSupport, getCascadeConstraintsString, getCaseInsensitiveLike, getCheckCondition, getCheckCondition, getCheckCondition, getCheckCondition, getCheckCondition, getColumnAliasExtractor, getColumnComment, getCreateCatalogCommand, getCreateEnumTypeCommand, getCreateEnumTypeCommand, getCreateIndexString, getCreateIndexTail, getCreateSchemaCommand, getCreateTableString, getCreateTemporaryTableColumnAnnotation, getCreateUserDefinedTypeExtensionsString, getCreateUserDefinedTypeKindString, getCrossReferenceParentTableFilter, getCurrentSchemaCommand, getCurrentTimestampSelectString, getDefaultIntervalSecondScale, getDefaultLobLength, getDefaultNonContextualLobCreation, getDefaultProperties, getDefaultTimestampPrecision, getDefaultUseGetGeneratedKeys, getDisableConstraintsStatement, getDisableConstraintStatement, getDmlTargetColumnQualifierSupport, getDoublePrecision, getDropCatalogCommand, getDropEnumTypeCommand, getDropEnumTypeCommand, getDropForeignKeyString, getDropSchemaCommand, getDropTableString, getDropUniqueKeyString, getDual, getEnableConstraintsStatement, getEnableConstraintStatement, getEnumTypeDeclaration, getEnumTypeDeclaration, getFallbackSchemaManagementTool, getFloatPrecision, getForeignKeyExporter, getForUpdateNowaitString, getForUpdateNowaitString, getForUpdateSkipLockedString, getForUpdateSkipLockedString, getForUpdateString, getForUpdateString, getForUpdateString, getForUpdateString, getFromDualForSelectOnly, getFunctionalDependencyAnalysisSupport, getGroupBySelectItemReferenceStrategy, getHqlTranslator, getKeywords, getLobMergeStrategy, getLockingStrategy, getLockRowIdentifier, getLowercaseFunction, getMaxNVarcharCapacity, getMaxNVarcharLength, getMaxVarbinaryCapacity, getMaxVarcharCapacity, getMinimumSupportedVersion, getMultiKeyLoadSizingStrategy, getNameQualifierSupport, getNationalizationSupport, getNativeIdentifierGeneratorStrategy, getNativeParameterMarkerStrategy, getNoColumnsInsertString, getNullColumnString, getNullColumnString, getNullOrdering, getParameterCountLimit, getPreferredSqlTypeCodeForArray, getQueryHintString, getQueryHintString, getQuerySequencesString, getReadLockString, getReadRowLockStrategy, getResultSet, getResultSet, getRowIdColumnString, getSchemaNameResolver, getSelectGUIDString, getSequenceExporter, getSequenceInformationExtractor, getSequenceSupport, getSizeStrategy, getSqmTranslatorFactory, getTableCleaner, getTableComment, getTableExporter, getTableMigrator, getTableTypeString, getTemporaryTableAfterUseAction, getTemporaryTableBeforeUseAction, getTemporaryTableCreateCommand, getTemporaryTableDdlTransactionHandling, getTemporaryTableDropCommand, getTemporaryTableExporter, getTemporaryTableTruncateCommand, getTimeoutInSeconds, getTimeZoneSupport, getTruncateTableStatement, getTruncateTableStatements, getUniqueDelegate, getUniqueKeyExporter, getUserDefinedTypeComment, getUserDefinedTypeExporter, getVersion, getWriteLockString, getWriteRowLockStrategy, hasAlterTable, hasDataTypeBeforeGeneratedAs, hasSelfReferentialForeignKeyBug, initDefaultProperties, inlineLiteral, isAnsiNullOn, isCurrentTimestampSelectStringCallable, isEmptyStringTreatedAsNull, isJdbcLogWarningsEnabledByDefault, isLob, isLockTimeoutParameterized, openQuote, ordinal, prependComment, qualifyIndexName, quote, quoteCollation, registerColumnTypes, registerKeyword, registerKeywords, registerResultSetOutParameter, requiresCastForConcatenatingNonStrings, requiresFloatCastingOfIntegerDivision, requiresParensForTupleCounts, requiresParensForTupleDistinctCounts, resolveSqlTypeCode, resolveSqlTypeCode, resolveSqlTypeLength, rowId, rowIdSqlType, supportsAlterColumnType, supportsBatchUpdates, supportsBindingNullForSetObject, supportsBindingNullSqlTypeForSetNull, supportsBitType, supportsCaseInsensitiveLike, supportsColumnCheck, supportsCommentOn, supportsConflictClauseForInsertCTE, supportsCurrentTimestampSelection, supportsDistinctFromPredicate, supportsExpectedLobUsagePattern, supportsFetchClause, supportsFractionalTimestampArithmetic, supportsFromClauseInUpdate, supportsIfExistsAfterAlterTable, supportsIfExistsAfterConstraintName, supportsIfExistsAfterTableName, supportsIfExistsAfterTypeName, supportsIfExistsBeforeConstraintName, supportsIfExistsBeforeTableName, supportsIfExistsBeforeTypeName, supportsInsertReturning, supportsInsertReturningGeneratedKeys, supportsInsertReturningRowId, supportsIsTrue, supportsJdbcConnectionLobCreation, supportsLateral, supportsMaterializedLobAccess, supportsNamedParameters, supportsNationalizedMethods, supportsNoColumnsInsert, supportsNonQueryWithCTE, supportsNullPrecedence, supportsOffsetInSubquery, supportsOrdinalSelectItemReference, supportsOuterJoinForUpdate, supportsParametersInInsertSelect, supportsPartitionBy, supportsPredicateAsExpression, supportsRecursiveCTE, supportsRefCursors, supportsResultSetPositionQueryMethodsOnForwardOnlyCursor, supportsSkipLocked, supportsStandardArrays, supportsStandardCurrentTimestampFunction, supportsSubqueryInSelect, supportsSubqueryOnMutatingTable, supportsSubselectAsInPredicateLHS, supportsTableCheck, supportsTemporalLiteralOffset, supportsTemporaryTablePrimaryKey, supportsTemporaryTables, supportsTruncateWithCast, supportsTupleCounts, supportsUnionAll, supportsUnionInSubquery, supportsUpdateReturning, supportsValuesList, supportsValuesListForInsert, toBooleanValueString, toQuotedIdentifier, toString, transformSelectString, translateDurationField, translateExtractField, trimPattern, trimPattern, unquoteGetGeneratedKeys, useArrayForMultiValuedParameters, useCrossReferenceForeignKeys, useMaterializedLobWhenCapacityExceeded
-
-
-
-
Method Detail
-
registerDefaultKeywords
protected void registerDefaultKeywords()
- Overrides:
registerDefaultKeywordsin classorg.hibernate.dialect.Dialect
-
columnType
protected String columnType(int sqlTypeCode)
- Overrides:
columnTypein classorg.hibernate.dialect.Dialect
-
getDefaultStatementBatchSize
public int getDefaultStatementBatchSize()
- Overrides:
getDefaultStatementBatchSizein classorg.hibernate.dialect.Dialect
-
useInputStreamToInsertBlob
public boolean useInputStreamToInsertBlob()
- Overrides:
useInputStreamToInsertBlobin classorg.hibernate.dialect.Dialect
-
useConnectionToCreateLob
public boolean useConnectionToCreateLob()
- Overrides:
useConnectionToCreateLobin classorg.hibernate.dialect.Dialect
-
getMaxVarcharLength
public int getMaxVarcharLength()
- Overrides:
getMaxVarcharLengthin classorg.hibernate.dialect.Dialect
-
getMaxVarbinaryLength
public int getMaxVarbinaryLength()
- Overrides:
getMaxVarbinaryLengthin classorg.hibernate.dialect.Dialect
-
resolveSqlTypeDescriptor
public org.hibernate.type.descriptor.jdbc.JdbcType resolveSqlTypeDescriptor(String columnTypeName, int jdbcTypeCode, int precision, int scale, org.hibernate.type.descriptor.jdbc.spi.JdbcTypeRegistry jdbcTypeRegistry)
- Overrides:
resolveSqlTypeDescriptorin classorg.hibernate.dialect.Dialect
-
getSqlAstTranslatorFactory
public org.hibernate.sql.ast.SqlAstTranslatorFactory getSqlAstTranslatorFactory()
- Overrides:
getSqlAstTranslatorFactoryin classorg.hibernate.dialect.Dialect
-
getPreferredSqlTypeCodeForBoolean
public int getPreferredSqlTypeCodeForBoolean()
- Overrides:
getPreferredSqlTypeCodeForBooleanin classorg.hibernate.dialect.Dialect
-
getDefaultDecimalPrecision
public int getDefaultDecimalPrecision()
- Overrides:
getDefaultDecimalPrecisionin classorg.hibernate.dialect.Dialect
-
getFractionalSecondPrecisionInNanos
public long getFractionalSecondPrecisionInNanos()
- Overrides:
getFractionalSecondPrecisionInNanosin classorg.hibernate.dialect.Dialect
-
timestampdiffPattern
public String timestampdiffPattern(org.hibernate.query.sqm.TemporalUnit unit, TemporalType fromTemporalType, TemporalType toTemporalType)
- Overrides:
timestampdiffPatternin classorg.hibernate.dialect.Dialect
-
timestampaddPattern
public String timestampaddPattern(org.hibernate.query.sqm.TemporalUnit unit, TemporalType temporalType, org.hibernate.query.sqm.IntervalType intervalType)
- Overrides:
timestampaddPatternin classorg.hibernate.dialect.Dialect
-
initializeFunctionRegistry
public void initializeFunctionRegistry(org.hibernate.boot.model.FunctionContributions functionContributions)
- Overrides:
initializeFunctionRegistryin classorg.hibernate.dialect.Dialect
-
getForUpdateString
public String getForUpdateString()
Does this dialect support theFOR UPDATEsyntax?- Overrides:
getForUpdateStringin classorg.hibernate.dialect.Dialect- Returns:
- empty string ... Teradata does not support
FOR UPDATEsyntax
-
getAddColumnString
public String getAddColumnString()
- Overrides:
getAddColumnStringin classorg.hibernate.dialect.Dialect
-
getFallbackSqmMutationStrategy
public org.hibernate.query.sqm.mutation.spi.SqmMultiTableMutationStrategy getFallbackSqmMutationStrategy(org.hibernate.metamodel.mapping.EntityMappingType rootEntityDescriptor, org.hibernate.metamodel.spi.RuntimeModelCreationContext runtimeModelCreationContext)- Overrides:
getFallbackSqmMutationStrategyin classorg.hibernate.dialect.Dialect
-
getFallbackSqmInsertStrategy
public org.hibernate.query.sqm.mutation.spi.SqmMultiTableInsertStrategy getFallbackSqmInsertStrategy(org.hibernate.metamodel.mapping.EntityMappingType rootEntityDescriptor, org.hibernate.metamodel.spi.RuntimeModelCreationContext runtimeModelCreationContext)- Overrides:
getFallbackSqmInsertStrategyin classorg.hibernate.dialect.Dialect
-
getSupportedTemporaryTableKind
public org.hibernate.dialect.temptable.TemporaryTableKind getSupportedTemporaryTableKind()
- Overrides:
getSupportedTemporaryTableKindin classorg.hibernate.dialect.Dialect
-
getTemporaryTableCreateOptions
public String getTemporaryTableCreateOptions()
- Overrides:
getTemporaryTableCreateOptionsin classorg.hibernate.dialect.Dialect
-
getMaxAliasLength
public int getMaxAliasLength()
- Overrides:
getMaxAliasLengthin classorg.hibernate.dialect.Dialect
-
getMaxIdentifierLength
public int getMaxIdentifierLength()
- Overrides:
getMaxIdentifierLengthin classorg.hibernate.dialect.Dialect
-
supportsCascadeDelete
public boolean supportsCascadeDelete()
- Overrides:
supportsCascadeDeletein classorg.hibernate.dialect.Dialect
-
supportsCircularCascadeDeleteConstraints
public boolean supportsCircularCascadeDeleteConstraints()
- Overrides:
supportsCircularCascadeDeleteConstraintsin classorg.hibernate.dialect.Dialect
-
supportsTupleDistinctCounts
public boolean supportsTupleDistinctCounts()
- Overrides:
supportsTupleDistinctCountsin classorg.hibernate.dialect.Dialect
-
supportsExistsInSelect
public boolean supportsExistsInSelect()
- Overrides:
supportsExistsInSelectin classorg.hibernate.dialect.Dialect
-
supportsOrderByInSubquery
public boolean supportsOrderByInSubquery()
- Overrides:
supportsOrderByInSubqueryin classorg.hibernate.dialect.Dialect
-
supportsWindowFunctions
public boolean supportsWindowFunctions()
- Overrides:
supportsWindowFunctionsin classorg.hibernate.dialect.Dialect
-
getSelectClauseNullString
public String getSelectClauseNullString(int sqlType, org.hibernate.type.spi.TypeConfiguration typeConfiguration)
- Overrides:
getSelectClauseNullStringin classorg.hibernate.dialect.Dialect
-
supportsUnboundedLobLocatorMaterialization
public boolean supportsUnboundedLobLocatorMaterialization()
- Overrides:
supportsUnboundedLobLocatorMaterializationin classorg.hibernate.dialect.Dialect
-
getCreateMultisetTableString
public String getCreateMultisetTableString()
- Overrides:
getCreateMultisetTableStringin classorg.hibernate.dialect.Dialect
-
supportsLobValueChangePropagation
public boolean supportsLobValueChangePropagation()
- Overrides:
supportsLobValueChangePropagationin classorg.hibernate.dialect.Dialect
-
doesReadCommittedCauseWritersToBlockReaders
public boolean doesReadCommittedCauseWritersToBlockReaders()
- Overrides:
doesReadCommittedCauseWritersToBlockReadersin classorg.hibernate.dialect.Dialect
-
doesRepeatableReadCauseReadersToBlockWriters
public boolean doesRepeatableReadCauseReadersToBlockWriters()
- Overrides:
doesRepeatableReadCauseReadersToBlockWritersin classorg.hibernate.dialect.Dialect
-
supportsBindAsCallableArgument
public boolean supportsBindAsCallableArgument()
- Overrides:
supportsBindAsCallableArgumentin classorg.hibernate.dialect.Dialect
-
getInExpressionCountLimit
public int getInExpressionCountLimit()
- Overrides:
getInExpressionCountLimitin classorg.hibernate.dialect.Dialect
-
registerResultSetOutParameter
public int registerResultSetOutParameter(CallableStatement statement, int col) throws SQLException
- Overrides:
registerResultSetOutParameterin classorg.hibernate.dialect.Dialect- Throws:
SQLException
-
getResultSet
public ResultSet getResultSet(CallableStatement cs) throws SQLException
- Overrides:
getResultSetin classorg.hibernate.dialect.Dialect- Throws:
SQLException
-
getViolatedConstraintNameExtractor
public org.hibernate.exception.spi.ViolatedConstraintNameExtractor getViolatedConstraintNameExtractor()
- Specified by:
getViolatedConstraintNameExtractorin interfaceorg.hibernate.exception.spi.ConversionContext- Overrides:
getViolatedConstraintNameExtractorin classorg.hibernate.dialect.Dialect
-
supportsLockTimeouts
public boolean supportsLockTimeouts()
- Overrides:
supportsLockTimeoutsin classorg.hibernate.dialect.Dialect
-
supportsNoWait
public boolean supportsNoWait()
- Overrides:
supportsNoWaitin classorg.hibernate.dialect.Dialect
-
supportsWait
public boolean supportsWait()
- Overrides:
supportsWaitin classorg.hibernate.dialect.Dialect
-
useFollowOnLocking
public boolean useFollowOnLocking(String sql, org.hibernate.query.spi.QueryOptions queryOptions)
- Overrides:
useFollowOnLockingin classorg.hibernate.dialect.Dialect
-
getWriteLockString
public String getWriteLockString(int timeout)
- Overrides:
getWriteLockStringin classorg.hibernate.dialect.Dialect
-
getReadLockString
public String getReadLockString(int timeout)
- Overrides:
getReadLockStringin classorg.hibernate.dialect.Dialect
-
getIndexExporter
public org.hibernate.tool.schema.spi.Exporter<org.hibernate.mapping.Index> getIndexExporter()
- Overrides:
getIndexExporterin classorg.hibernate.dialect.Dialect
-
getIdentityColumnSupport
public org.hibernate.dialect.identity.IdentityColumnSupport getIdentityColumnSupport()
- Overrides:
getIdentityColumnSupportin classorg.hibernate.dialect.Dialect
-
applyLocksToSql
public String applyLocksToSql(String sql, org.hibernate.LockOptions aliasedLockOptions, Map<String,String[]> keyColumnNames)
- Overrides:
applyLocksToSqlin classorg.hibernate.dialect.Dialect
-
getLimitHandler
public org.hibernate.dialect.pagination.LimitHandler getLimitHandler()
- Overrides:
getLimitHandlerin classorg.hibernate.dialect.Dialect
-
-