Package org.hibernate.community.dialect
Class MimerSQLDialect
- java.lang.Object
-
- org.hibernate.dialect.Dialect
-
- org.hibernate.community.dialect.MimerSQLDialect
-
- All Implemented Interfaces:
org.hibernate.exception.spi.ConversionContext
public class MimerSQLDialect extends org.hibernate.dialect.Dialect
A dialect for Mimer SQL 11.
-
-
Constructor Summary
Constructors Constructor Description MimerSQLDialect()
MimerSQLDialect(org.hibernate.engine.jdbc.dialect.spi.DialectResolutionInfo info)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
appendDatetimeFormat(org.hibernate.sql.ast.spi.SqlAppender appender, String format)
protected String
columnType(int sqlTypeCode)
String
currentTime()
String
currentTimestamp()
boolean
dropConstraints()
String
extractPattern(org.hibernate.query.sqm.TemporalUnit unit)
Mimer supports a limited list of temporal fields in the extract() function, but we can emulate some of them by using the appropriate named functions instead of extract().String
getCascadeConstraintsString()
int
getDefaultStatementBatchSize()
org.hibernate.dialect.identity.IdentityColumnSupport
getIdentityColumnSupport()
org.hibernate.dialect.pagination.LimitHandler
getLimitHandler()
int
getMaxNVarcharLength()
int
getMaxVarbinaryLength()
int
getMaxVarcharLength()
String
getQuerySequencesString()
org.hibernate.tool.schema.extract.spi.SequenceInformationExtractor
getSequenceInformationExtractor()
org.hibernate.dialect.sequence.SequenceSupport
getSequenceSupport()
org.hibernate.sql.ast.SqlAstTranslatorFactory
getSqlAstTranslatorFactory()
org.hibernate.dialect.DatabaseVersion
getVersion()
void
initializeFunctionRegistry(org.hibernate.query.spi.QueryEngine queryEngine)
protected void
registerColumnTypes(org.hibernate.boot.model.TypeContributions typeContributions, org.hibernate.service.ServiceRegistry serviceRegistry)
boolean
supportsOffsetInSubquery()
boolean
supportsOuterJoinForUpdate()
String
timestampaddPattern(org.hibernate.query.sqm.TemporalUnit unit, TemporalType temporalType, org.hibernate.query.sqm.IntervalType intervalType)
String
timestampdiffPattern(org.hibernate.query.sqm.TemporalUnit unit, TemporalType fromTemporalType, TemporalType toTemporalType)
boolean
useInputStreamToInsertBlob()
-
Methods inherited from class org.hibernate.dialect.Dialect
addSqlHintOrComment, appendBinaryLiteral, appendBooleanValueString, appendDateTimeLiteral, appendDateTimeLiteral, appendDateTimeLiteral, appendIntervalLiteral, appendLiteral, appendLockHint, applyLocksToSql, augmentPhysicalTableTypes, augmentRecognizedTableTypes, buildIdentifierHelper, buildSQLExceptionConversionDelegate, canCreateCatalog, canCreateSchema, castPattern, castType, closeQuote, contributeTypes, currentDate, currentLocalTime, currentLocalTimestamp, currentTimestampWithTimeZone, defaultScrollMode, doesReadCommittedCauseWritersToBlockReaders, doesRepeatableReadCauseReadersToBlockWriters, equivalentTypes, escapeComment, forceLobAsLastValue, generatedAs, getAddColumnString, getAddColumnSuffixString, getAddForeignKeyConstraintString, getAddForeignKeyConstraintString, getAddPrimaryKeyConstraintString, getAlterTableString, getAuxiliaryDatabaseObjectExporter, getBooleanCheckCondition, getCallableStatementSupport, getCaseInsensitiveLike, getColumnAliasExtractor, getColumnComment, getCreateCatalogCommand, getCreateMultisetTableString, getCreateSchemaCommand, getCreateTableString, getCreateTemporaryTableColumnAnnotation, getCurrentSchemaCommand, getCurrentTimestampSelectString, getDefaultBatchLoadSizingStrategy, getDefaultDecimalPrecision, getDefaultLobLength, getDefaultNonContextualLobCreation, getDefaultProperties, getDefaultTimestampPrecision, getDefaultUseGetGeneratedKeys, getDoublePrecision, getDropCatalogCommand, getDropForeignKeyString, getDropSchemaCommand, getDropTableString, getEnumCheckCondition, getFallbackSqmInsertStrategy, getFallbackSqmMutationStrategy, getFloatPrecision, getForeignKeyExporter, getForUpdateNowaitString, getForUpdateNowaitString, getForUpdateSkipLockedString, getForUpdateSkipLockedString, getForUpdateString, getForUpdateString, getForUpdateString, getForUpdateString, getForUpdateString, getFractionalSecondPrecisionInNanos, getGroupBySelectItemReferenceStrategy, getHqlTranslator, getIndexExporter, getInExpressionCountLimit, getKeywords, getLobMergeStrategy, getLockingStrategy, getLockRowIdentifier, getLowercaseFunction, getMaxAliasLength, getMaxIdentifierLength, getNameQualifierSupport, getNationalizationSupport, getNativeIdentifierGeneratorStrategy, getNoColumnsInsertString, getNullColumnString, getNullColumnString, getNullOrdering, getPreferredSqlTypeCodeForBoolean, getQueryHintString, getQueryHintString, getReadLockString, getReadLockString, getReadRowLockStrategy, getResultSet, getResultSet, getResultSet, getSchemaNameResolver, getSelectClauseNullString, getSelectGUIDString, getSequenceExporter, getSizeStrategy, getSqmTranslatorFactory, getSupportedTemporaryTableKind, getTableComment, getTableExporter, getTableTypeString, getTemporaryTableAfterUseAction, getTemporaryTableBeforeUseAction, getTemporaryTableCreateCommand, getTemporaryTableCreateOptions, getTemporaryTableDdlTransactionHandling, getTemporaryTableDropCommand, getTemporaryTableExporter, getTemporaryTableTruncateCommand, getTimeZoneSupport, getUniqueDelegate, getUniqueKeyExporter, getViolatedConstraintNameExtractor, getWriteLockString, getWriteLockString, getWriteRowLockStrategy, hasAlterTable, hasDataTypeBeforeGeneratedAs, hasSelfReferentialForeignKeyBug, initDefaultProperties, inlineLiteral, isAnsiNullOn, isCurrentTimestampSelectStringCallable, isEmptyStringTreatedAsNull, isJdbcLogWarningsEnabledByDefault, isLockTimeoutParameterized, openQuote, prependComment, qualifyIndexName, quote, registerDefaultKeywords, registerKeyword, registerKeywords, registerResultSetOutParameter, registerResultSetOutParameter, requiresFloatCastingOfIntegerDivision, requiresParensForTupleCounts, requiresParensForTupleDistinctCounts, resolveSqlTypeDescriptor, resolveSqlTypeLength, supportsBindAsCallableArgument, supportsBitType, supportsCascadeDelete, supportsCaseInsensitiveLike, supportsCircularCascadeDeleteConstraints, supportsColumnCheck, supportsCommentOn, supportsCurrentTimestampSelection, supportsExistsInSelect, supportsExpectedLobUsagePattern, supportsFetchClause, supportsFractionalTimestampArithmetic, supportsIfExistsAfterAlterTable, supportsIfExistsAfterConstraintName, supportsIfExistsAfterTableName, supportsIfExistsBeforeConstraintName, supportsIfExistsBeforeTableName, supportsJdbcConnectionLobCreation, supportsLateral, supportsLobValueChangePropagation, supportsLockTimeouts, supportsNamedParameters, supportsNoColumnsInsert, supportsNonQueryWithCTE, supportsNoWait, supportsNullPrecedence, supportsOrderByInSubquery, supportsOrdinalSelectItemReference, supportsParametersInInsertSelect, supportsPartitionBy, supportsResultSetPositionQueryMethodsOnForwardOnlyCursor, supportsSkipLocked, supportsSubqueryInSelect, supportsSubqueryOnMutatingTable, supportsSubselectAsInPredicateLHS, supportsTableCheck, supportsTemporalLiteralOffset, supportsTemporaryTablePrimaryKey, supportsTemporaryTables, supportsTruncateWithCast, supportsTupleCounts, supportsTupleDistinctCounts, supportsUnboundedLobLocatorMaterialization, supportsUnionAll, supportsUnionInSubquery, supportsValuesList, supportsValuesListForInsert, supportsWait, supportsWindowFunctions, toBooleanValueString, toString, transformSelectString, translateDurationField, translateExtractField, trimPattern, useFollowOnLocking
-
-
-
-
Method Detail
-
columnType
protected String columnType(int sqlTypeCode)
- Overrides:
columnType
in classorg.hibernate.dialect.Dialect
-
registerColumnTypes
protected void registerColumnTypes(org.hibernate.boot.model.TypeContributions typeContributions, org.hibernate.service.ServiceRegistry serviceRegistry)
- Overrides:
registerColumnTypes
in classorg.hibernate.dialect.Dialect
-
getMaxVarbinaryLength
public int getMaxVarbinaryLength()
- Overrides:
getMaxVarbinaryLength
in classorg.hibernate.dialect.Dialect
-
getMaxVarcharLength
public int getMaxVarcharLength()
- Overrides:
getMaxVarcharLength
in classorg.hibernate.dialect.Dialect
-
getMaxNVarcharLength
public int getMaxNVarcharLength()
- Overrides:
getMaxNVarcharLength
in classorg.hibernate.dialect.Dialect
-
getVersion
public org.hibernate.dialect.DatabaseVersion getVersion()
- Overrides:
getVersion
in classorg.hibernate.dialect.Dialect
-
getDefaultStatementBatchSize
public int getDefaultStatementBatchSize()
- Overrides:
getDefaultStatementBatchSize
in classorg.hibernate.dialect.Dialect
-
initializeFunctionRegistry
public void initializeFunctionRegistry(org.hibernate.query.spi.QueryEngine queryEngine)
- Overrides:
initializeFunctionRegistry
in classorg.hibernate.dialect.Dialect
-
getSqlAstTranslatorFactory
public org.hibernate.sql.ast.SqlAstTranslatorFactory getSqlAstTranslatorFactory()
- Overrides:
getSqlAstTranslatorFactory
in classorg.hibernate.dialect.Dialect
-
currentTimestamp
public String currentTimestamp()
- Overrides:
currentTimestamp
in classorg.hibernate.dialect.Dialect
-
currentTime
public String currentTime()
- Overrides:
currentTime
in classorg.hibernate.dialect.Dialect
-
extractPattern
public String extractPattern(org.hibernate.query.sqm.TemporalUnit unit)
Mimer supports a limited list of temporal fields in the extract() function, but we can emulate some of them by using the appropriate named functions instead of extract(). Thus, the additional supported fields areTemporalUnit.WEEK
,TemporalUnit.DAY_OF_YEAR
,TemporalUnit.DAY_OF_MONTH
,TemporalUnit.DAY_OF_YEAR
.- Overrides:
extractPattern
in classorg.hibernate.dialect.Dialect
-
timestampdiffPattern
public String timestampdiffPattern(org.hibernate.query.sqm.TemporalUnit unit, TemporalType fromTemporalType, TemporalType toTemporalType)
- Overrides:
timestampdiffPattern
in classorg.hibernate.dialect.Dialect
-
timestampaddPattern
public String timestampaddPattern(org.hibernate.query.sqm.TemporalUnit unit, TemporalType temporalType, org.hibernate.query.sqm.IntervalType intervalType)
- Overrides:
timestampaddPattern
in classorg.hibernate.dialect.Dialect
-
dropConstraints
public boolean dropConstraints()
- Overrides:
dropConstraints
in classorg.hibernate.dialect.Dialect
-
getCascadeConstraintsString
public String getCascadeConstraintsString()
- Overrides:
getCascadeConstraintsString
in classorg.hibernate.dialect.Dialect
-
getSequenceSupport
public org.hibernate.dialect.sequence.SequenceSupport getSequenceSupport()
- Overrides:
getSequenceSupport
in classorg.hibernate.dialect.Dialect
-
getQuerySequencesString
public String getQuerySequencesString()
- Overrides:
getQuerySequencesString
in classorg.hibernate.dialect.Dialect
-
getSequenceInformationExtractor
public org.hibernate.tool.schema.extract.spi.SequenceInformationExtractor getSequenceInformationExtractor()
- Overrides:
getSequenceInformationExtractor
in classorg.hibernate.dialect.Dialect
-
getLimitHandler
public org.hibernate.dialect.pagination.LimitHandler getLimitHandler()
- Overrides:
getLimitHandler
in classorg.hibernate.dialect.Dialect
-
supportsOuterJoinForUpdate
public boolean supportsOuterJoinForUpdate()
- Overrides:
supportsOuterJoinForUpdate
in classorg.hibernate.dialect.Dialect
-
supportsOffsetInSubquery
public boolean supportsOffsetInSubquery()
- Overrides:
supportsOffsetInSubquery
in classorg.hibernate.dialect.Dialect
-
appendDatetimeFormat
public void appendDatetimeFormat(org.hibernate.sql.ast.spi.SqlAppender appender, String format)
- Overrides:
appendDatetimeFormat
in classorg.hibernate.dialect.Dialect
-
useInputStreamToInsertBlob
public boolean useInputStreamToInsertBlob()
- Overrides:
useInputStreamToInsertBlob
in classorg.hibernate.dialect.Dialect
-
getIdentityColumnSupport
public org.hibernate.dialect.identity.IdentityColumnSupport getIdentityColumnSupport()
- Overrides:
getIdentityColumnSupport
in classorg.hibernate.dialect.Dialect
-
-