org.hibernate.dialect
Class SybaseAnywhereDialect

java.lang.Object
  extended by org.hibernate.dialect.Dialect
      extended by org.hibernate.dialect.SybaseDialect
          extended by org.hibernate.dialect.SybaseAnywhereDialect

public class SybaseAnywhereDialect
extends SybaseDialect

SQL Dialect for Sybase Anywhere extending Sybase (Enterprise) Dialect (Tested on ASA 8.x)

Author:
?

Field Summary
 
Fields inherited from class org.hibernate.dialect.Dialect
CLOSED_QUOTE, DEFAULT_BATCH_SIZE, NO_BATCH, QUOTE
 
Constructor Summary
SybaseAnywhereDialect()
           
 
Method Summary
 boolean dropConstraints()
          ASA does not require to drop constraint before dropping tables, and DROP statement syntax used by Hibernate to drop constraint is not compatible with ASA, so disable it
 String getNoColumnsInsertString()
          Sybase Anywhere syntax would require a "DEFAULT" for each column specified, but I suppose Hibernate use this syntax only with tables with just 1 column
 boolean supportsInsertSelectIdentity()
          Does the dialect support some form of inserting and selecting the generated IDENTITY value all in the same statement.
 
Methods inherited from class org.hibernate.dialect.SybaseDialect
appendIdentitySelectToInsert, appendLockHint, applyLocksToSql, doesReadCommittedCauseWritersToBlockReaders, doesRepeatableReadCauseReadersToBlockWriters, dropTemporaryTableAfterUse, generateTemporaryTableName, getAddColumnString, getCurrentTimestampSelectString, getForUpdateString, getIdentityColumnString, getIdentitySelectString, getNullColumnString, getResultSet, isCurrentTimestampSelectStringCallable, qualifyIndexName, registerResultSetOutParameter, supportsCurrentTimestampSelection, supportsEmptyInList, supportsExistsInSelect, supportsIdentityColumns, supportsTemporaryTables
 
Methods inherited from class org.hibernate.dialect.Dialect
areStringComparisonsCaseInsensitive, bindLimitParametersFirst, bindLimitParametersInReverseOrder, buildSQLExceptionConverter, closeQuote, createCaseFragment, createOuterJoinFragment, forUpdateOfColumns, getAddForeignKeyConstraintString, getAddPrimaryKeyConstraintString, getCascadeConstraintsString, getCastTypeName, getColumnComment, getCreateMultisetTableString, getCreateSequenceString, getCreateSequenceString, getCreateSequenceStrings, getCreateSequenceStrings, getCreateTableString, getCreateTemporaryTablePostfix, getCreateTemporaryTableString, getCurrentTimestampSQLFunctionName, getDefaultProperties, getDialect, getDialect, getDropForeignKeyString, getDropSequenceString, getDropSequenceStrings, getForUpdateNowaitString, getForUpdateNowaitString, getForUpdateString, getForUpdateString, getFunctions, getHibernateTypeName, getHibernateTypeName, getIdentityColumnString, getIdentityInsertString, getIdentitySelectString, getKeywords, getLimitString, getLimitString, getLockingStrategy, getLowercaseFunction, getMaxAliasLength, getNativeIdentifierGeneratorClass, getQuerySequencesString, getSelectClauseNullString, getSelectGUIDString, getSelectSequenceNextValString, getSequenceNextValString, getTableComment, getTableTypeString, getTypeName, getTypeName, getViolatedConstraintNameExtracter, hasAlterTable, hasDataTypeInIdentityColumn, hasSelfReferentialForeignKeyBug, openQuote, performTemporaryTableDDLInIsolation, quote, registerColumnType, registerColumnType, registerFunction, registerHibernateType, registerHibernateType, registerKeyword, supportsBindAsCallableArgument, supportsCascadeDelete, supportsCircularCascadeDeleteConstraints, supportsColumnCheck, supportsCommentOn, supportsExpectedLobUsagePattern, supportsIfExistsAfterTableName, supportsIfExistsBeforeTableName, supportsLimit, supportsLimitOffset, supportsLobValueChangePropogation, supportsNotNullUnique, supportsOuterJoinForUpdate, supportsParametersInInsertSelect, supportsPooledSequences, supportsResultSetPositionQueryMethodsOnForwardOnlyCursor, supportsRowValueConstructorSyntax, supportsRowValueConstructorSyntaxInInList, supportsSequences, supportsSubqueryOnMutatingTable, supportsSubselectAsInPredicateLHS, supportsTableCheck, supportsUnboundedLobLocatorMaterialization, supportsUnionAll, supportsUnique, supportsUniqueConstraintInCreateAlterTable, supportsVariableLimit, toBooleanValueString, toString, transformSelectString, useInputStreamToInsertBlob, useMaxForLimit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SybaseAnywhereDialect

public SybaseAnywhereDialect()
Method Detail

getNoColumnsInsertString

public String getNoColumnsInsertString()
Sybase Anywhere syntax would require a "DEFAULT" for each column specified, but I suppose Hibernate use this syntax only with tables with just 1 column

Overrides:
getNoColumnsInsertString in class Dialect
Returns:
The appropriate empty values clause.

dropConstraints

public boolean dropConstraints()
ASA does not require to drop constraint before dropping tables, and DROP statement syntax used by Hibernate to drop constraint is not compatible with ASA, so disable it

Overrides:
dropConstraints in class Dialect
Returns:
True if constraints must be dropped prior to dropping the table; false otherwise.

supportsInsertSelectIdentity

public boolean supportsInsertSelectIdentity()
Description copied from class: Dialect
Does the dialect support some form of inserting and selecting the generated IDENTITY value all in the same statement.

Overrides:
supportsInsertSelectIdentity in class SybaseDialect
Returns:
True if the dialect supports selecting the just generated IDENTITY in the insert statement.