## org.hibernate.dialect
Class RDMSOS2200Dialect

    java.lang.Object
      org.hibernate.dialect.Dialect
          org.hibernate.dialect.RDMSOS2200Dialect

All Implemented Interfaces:
  ConversionContext

    public class RDMSOS2200Dialect

extends Dialect

This is the Hibernate dialect for the Unisys 2200 Relational Database (RDMS). This dialect was developed for use with Hibernate 3.0.5. Other versions may require modifications to the dialect. Version History: Also change the version displayed below in the constructor 1.1 1.0 2005-10-24 CDH - First dated version for use with CP 11

Field Summary

Fields inherited from class org.hibernate.dialect.Dialect
`CLOSED_QUOTE, DEFAULT_BATCH_SIZE, LEGACY_LOB_MERGE_STRATEGY, NEW_LOCATOR_LOB_MERGE_STRATEGY, NO_BATCH, QUOTE, STREAM_XFER_LOB_MERGE_STRATEGY`

Constructor Summary
`RDMSOS2200Dialect()`

Method Summary
`CaseFragment` `createCaseFragment()` Create a `CaseFragment` strategy responsible for handling this dialect's variations in how CASE statements are handled.
`boolean` `forUpdateOfColumns()` The RDMS DB supports the 'FOR UPDATE OF' clause.
`String` `getAddColumnString()` The syntax used to add a column to a table (optional).
`String` `getCascadeConstraintsString()` Completely optional cascading drop clause
`String` `getCreateSequenceString(String sequenceName)` Typically dialects which support sequences can create a sequence with a single command.
`String` `getDropSequenceString(String sequenceName)` Typically dialects which support sequences can drop a sequence with a single command.
`String` `getForUpdateString()` Since the RDMS-JDBC driver does not support for updates, this string is set to an empty string.
`String` `getLimitString(String sql, int offset, int limit)` Given a limit and an offset, apply the limit clause to the query.
`LockingStrategy` `getLockingStrategy(Lockable lockable, LockMode lockMode)` Get a strategy instance which knows how to acquire a database-level lock of the specified mode for this dialect.
`String` `getNullColumnString()` The keyword used to specify a nullable column.
`String` `getSequenceNextValString(String sequenceName)` Generate the appropriate select statement to to retrieve the next value of a sequence.
`boolean` `qualifyIndexName()` RDMS does not support qualifing index names with the schema name.
`boolean` `supportsCascadeDelete()` RDMS does not support Cascade Deletes.
`boolean` `supportsLimit()` Does this dialect support some form of limiting query results via a SQL clause?
`boolean` `supportsLimitOffset()` Does this dialect's LIMIT support (if any) additionally support specifying an offset?
`boolean` `supportsOuterJoinForUpdate()` Currently, RDMS-JDBC does not support ForUpdate.
`boolean` `supportsSequences()` Does this dialect support sequences?
`boolean` `supportsUnionAll()` Does this dialect support UNION ALL, which is generally a faster variant of UNION?
`boolean` `supportsUniqueConstraintInCreateAlterTable()` RDMS does not support adding Unique constraints via create and alter table.
`boolean` `supportsVariableLimit()` Does this dialect support bind variables (i.e., prepared statement parameters) for its limit/offset?

Methods inherited from class org.hibernate.dialect.Dialect

`appendIdentitySelectToInsert, appendLockHint, applyLocksToSql, areStringComparisonsCaseInsensitive, bindLimitParametersFirst, bindLimitParametersInReverseOrder, buildSQLExceptionConversionDelegate, buildSQLExceptionConverter, closeQuote, convertToFirstRowValue, createOuterJoinFragment, doesReadCommittedCauseWritersToBlockReaders, doesRepeatableReadCauseReadersToBlockWriters, dropConstraints, dropTemporaryTableAfterUse, forceLimitUsage, generateTemporaryTableName, getAddForeignKeyConstraintString, getAddPrimaryKeyConstraintString, getAddUniqueConstraintString, getCaseInsensitiveLike, getCastTypeName, getColumnAliasExtractor, getColumnComment, getCreateMultisetTableString, getCreateSequenceString, getCreateSequenceStrings, getCreateSequenceStrings, getCreateTableString, getCreateTemporaryTablePostfix, getCreateTemporaryTableString, getCrossJoinSeparator, getCurrentTimestampSelectString, getCurrentTimestampSQLFunctionName, getDefaultProperties, getDialect, getDialect, getDropForeignKeyString, getDropSequenceStrings, getDropTemporaryTableString, getForUpdateNowaitString, getForUpdateNowaitString, getForUpdateString, getForUpdateString, getForUpdateString, getForUpdateString, getFunctions, getHibernateTypeName, getHibernateTypeName, getIdentityColumnString, getIdentityColumnString, getIdentityInsertString, getIdentitySelectString, getIdentitySelectString, getKeywords, getLimitString, getLobMergeStrategy, getLowercaseFunction, getMaxAliasLength, getNativeIdentifierGeneratorClass, getNoColumnsInsertString, getQuerySequencesString, getReadLockString, getResultSet, getSelectClauseNullString, getSelectGUIDString, getSelectSequenceNextValString, getSqlTypeDescriptorOverride, getTableComment, getTableTypeString, getTypeName, getTypeName, getViolatedConstraintNameExtracter, getWriteLockString, hasAlterTable, hasDataTypeInIdentityColumn, hasSelfReferentialForeignKeyBug, isCurrentTimestampSelectStringCallable, isLockTimeoutParameterized, openQuote, performTemporaryTableDDLInIsolation, quote, registerColumnType, registerColumnType, registerFunction, registerHibernateType, registerHibernateType, registerKeyword, registerResultSetOutParameter, remapSqlTypeDescriptor, replaceResultVariableInOrderByClauseWithPosition, requiresCastingOfParametersInSelectClause, supportsBindAsCallableArgument, supportsCaseInsensitiveLike, supportsCircularCascadeDeleteConstraints, supportsColumnCheck, supportsCommentOn, supportsCurrentTimestampSelection, supportsEmptyInList, supportsExistsInSelect, supportsExpectedLobUsagePattern, supportsIdentityColumns, supportsIfExistsAfterTableName, supportsIfExistsBeforeTableName, supportsInsertSelectIdentity, supportsLobValueChangePropogation, supportsLockTimeouts, supportsNotNullUnique, supportsParametersInInsertSelect, supportsPooledSequences, supportsResultSetPositionQueryMethodsOnForwardOnlyCursor, supportsRowValueConstructorSyntax, supportsRowValueConstructorSyntaxInInList, supportsSubqueryOnMutatingTable, supportsSubselectAsInPredicateLHS, supportsTableCheck, supportsTemporaryTables, supportsTupleCounts, supportsTupleDistinctCounts, supportsUnboundedLobLocatorMaterialization, supportsUnique, toBooleanValueString, toString, transformSelectString, useInputStreamToInsertBlob, useMaxForLimit`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### RDMSOS2200Dialect

    public RDMSOS2200Dialect()

Method Detail

### qualifyIndexName

    public boolean qualifyIndexName()

  RDMS does not support qualifing index names with the schema name.

  Overrides:
    `qualifyIndexName` in class `Dialect`
  Returns:
    boolean

### forUpdateOfColumns

    public boolean forUpdateOfColumns()

  The RDMS DB supports the 'FOR UPDATE OF' clause. However, the RDMS-JDBC driver does not support this feature, so a false is return. The base dialect also returns a false, but we will leave this over-ride in to make sure it stays false.

  Overrides:
    `forUpdateOfColumns` in class `Dialect`
  Returns:
    True if the database supports `FOR UPDATE OF` syntax; false otherwise.

### getForUpdateString

    public String getForUpdateString()

  Since the RDMS-JDBC driver does not support for updates, this string is set to an empty string. Whenever, the driver does support this feature, the returned string should be " FOR UPDATE OF". Note that RDMS does not support the string 'FOR UPDATE' string.

  Overrides:
    `getForUpdateString` in class `Dialect`
  Returns:
    The appropriate `FOR UPDATE` clause string.

### supportsUniqueConstraintInCreateAlterTable

    public boolean supportsUniqueConstraintInCreateAlterTable()

  RDMS does not support adding Unique constraints via create and alter table.

  Overrides:
    `supportsUniqueConstraintInCreateAlterTable` in class `Dialect`
  Returns:
    boolean

### supportsCascadeDelete

    public boolean supportsCascadeDelete()

  RDMS does not support Cascade Deletes. Need to review this in the future when support is provided.

  Overrides:
    `supportsCascadeDelete` in class `Dialect`

### supportsOuterJoinForUpdate

    public boolean supportsOuterJoinForUpdate()

  Currently, RDMS-JDBC does not support ForUpdate. Need to review this in the future when support is provided.

  Overrides:
    `supportsOuterJoinForUpdate` in class `Dialect`
  Returns:
    True if outer joined rows can be locked via `FOR UPDATE`.

### getAddColumnString

    public String getAddColumnString()

  Description copied from class: `Dialect`
  The syntax used to add a column to a table (optional).

  Overrides:
    `getAddColumnString` in class `Dialect`
  Returns:
    The "add column" fragment.

### getNullColumnString

    public String getNullColumnString()

  Description copied from class: `Dialect`
  The keyword used to specify a nullable column.

  Overrides:
    `getNullColumnString` in class `Dialect`
  Returns:
    String

### supportsSequences

    public boolean supportsSequences()

  Description copied from class: `Dialect`
  Does this dialect support sequences?

  Overrides:
    `supportsSequences` in class `Dialect`
  Returns:
    True if sequences supported; false otherwise.

### getSequenceNextValString

    public String getSequenceNextValString(String sequenceName)

  Description copied from class: `Dialect`
  Generate the appropriate select statement to to retrieve the next value of a sequence.

  This should be a "stand alone" select statement.

  Overrides:
    `getSequenceNextValString` in class `Dialect`
  Parameters:
    `sequenceName` - the name of the sequence
  Returns:
    String The "nextval" select string.

### getCreateSequenceString

    public String getCreateSequenceString(String sequenceName)

  Description copied from class: `Dialect`
  Typically dialects which support sequences can create a sequence with a single command. This is convenience form of `Dialect.getCreateSequenceStrings(java.lang.String)` to help facilitate that.

  Dialects which support sequences and can create a sequence in a single command need *only* override this method. Dialects which support sequences but require multiple commands to create a sequence should instead override `Dialect.getCreateSequenceStrings(java.lang.String)`.

  Overrides:
    `getCreateSequenceString` in class `Dialect`
  Parameters:
    `sequenceName` - The name of the sequence
  Returns:
    The sequence creation command

### getDropSequenceString

    public String getDropSequenceString(String sequenceName)

  Description copied from class: `Dialect`
  Typically dialects which support sequences can drop a sequence with a single command. This is convenience form of `Dialect.getDropSequenceStrings(java.lang.String)` to help facilitate that.

  Dialects which support sequences and can drop a sequence in a single command need *only* override this method. Dialects which support sequences but require multiple commands to drop a sequence should instead override `Dialect.getDropSequenceStrings(java.lang.String)`.

  Overrides:
    `getDropSequenceString` in class `Dialect`
  Parameters:
    `sequenceName` - The name of the sequence
  Returns:
    The sequence drop commands

### getCascadeConstraintsString

    public String getCascadeConstraintsString()

  Description copied from class: `Dialect`
  Completely optional cascading drop clause

  Overrides:
    `getCascadeConstraintsString` in class `Dialect`
  Returns:
    String

### createCaseFragment

    public CaseFragment createCaseFragment()

  Description copied from class: `Dialect`
  Create a `CaseFragment` strategy responsible for handling this dialect's variations in how CASE statements are handled.

  Overrides:
    `createCaseFragment` in class `Dialect`
  Returns:
    This dialect's `CaseFragment` strategy.

### supportsLimit

    public boolean supportsLimit()

  Description copied from class: `Dialect`
  Does this dialect support some form of limiting query results via a SQL clause?

  Overrides:
    `supportsLimit` in class `Dialect`
  Returns:
    True if this dialect supports some form of LIMIT.

### supportsLimitOffset

    public boolean supportsLimitOffset()

  Description copied from class: `Dialect`
  Does this dialect's LIMIT support (if any) additionally support specifying an offset?

  Overrides:
    `supportsLimitOffset` in class `Dialect`
  Returns:
    True if the dialect supports an offset within the limit support.

### getLimitString

    public String getLimitString(String sql,
                                 int offset,
                                 int limit)

  Description copied from class: `Dialect`
  Given a limit and an offset, apply the limit clause to the query.

  Overrides:
    `getLimitString` in class `Dialect`
  Parameters:
    `sql` - The query to which to apply the limit.
    `offset` - The offset of the limit
    `limit` - The limit of the limit ;)
  Returns:
    The modified query statement with the limit applied.

### supportsVariableLimit

    public boolean supportsVariableLimit()

  Description copied from class: `Dialect`
  Does this dialect support bind variables (i.e., prepared statement parameters) for its limit/offset?

  Overrides:
    `supportsVariableLimit` in class `Dialect`
  Returns:
    True if bind variables can be used; false otherwise.

### supportsUnionAll

    public boolean supportsUnionAll()

  Description copied from class: `Dialect`
  Does this dialect support UNION ALL, which is generally a faster variant of UNION?

  Overrides:
    `supportsUnionAll` in class `Dialect`
  Returns:
    True if UNION ALL is supported; false otherwise.

### getLockingStrategy

    public LockingStrategy getLockingStrategy(Lockable lockable,
                                              LockMode lockMode)

  Description copied from class: `Dialect`
  Get a strategy instance which knows how to acquire a database-level lock of the specified mode for this dialect.

  Overrides:
    `getLockingStrategy` in class `Dialect`
  Parameters:
    `lockable` - The persister for the entity to be locked.
    `lockMode` - The type of lock to be acquired.
  Returns:
    The appropriate locking strategy.

Copyright © 2001-2012 Red Hat, Inc. All Rights Reserved.