## org.hibernate.dialect
Class FirebirdDialect

    java.lang.Object
      org.hibernate.dialect.Dialect
          org.hibernate.dialect.InterbaseDialect
              org.hibernate.dialect.FirebirdDialect

    public class FirebirdDialect

extends InterbaseDialect

An SQL dialect for Firebird.

Author:
  Reha CENANI

Field Summary

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

Constructor Summary
`FirebirdDialect()`

Method Summary
`boolean` `bindLimitParametersFirst()` Does the `LIMIT` clause come at the start of the `SELECT` statement, rather than at the end?
`boolean` `bindLimitParametersInReverseOrder()` ANSI SQL defines the LIMIT clause to be in the form LIMIT offset, limit.
`String` `getDropSequenceString(String sequenceName)` Typically dialects which support sequences can drop a sequence with a single command.
`String` `getLimitString(String sql, boolean hasOffset)` Apply s limit clause to the query.

Methods inherited from class org.hibernate.dialect.InterbaseDialect
`getAddColumnString, getCreateSequenceString, getCurrentTimestampCallString, getForUpdateString, getForUpdateString, getQuerySequencesString, getSelectSequenceNextValString, getSequenceNextValString, isCurrentTimestampSelectStringCallable, supportsLimit, supportsSequences`

Methods inherited from class org.hibernate.dialect.Dialect

`addTypeOverride, appendIdentitySelectToInsert, appendLockHint, applyLocksToSql, areStringComparisonsCaseInsensitive, buildSQLExceptionConverter, closeQuote, convertToFirstRowValue, createCaseFragment, createOuterJoinFragment, doesReadCommittedCauseWritersToBlockReaders, doesRepeatableReadCauseReadersToBlockWriters, dropConstraints, dropTemporaryTableAfterUse, forceLimitUsage, forUpdateOfColumns, generateTemporaryTableName, getAddForeignKeyConstraintString, getAddPrimaryKeyConstraintString, getCascadeConstraintsString, getCastTypeName, getColumnAliasExtractor, getColumnComment, getCreateMultisetTableString, getCreateSequenceString, getCreateSequenceStrings, getCreateSequenceStrings, getCreateTableString, getCreateTemporaryTablePostfix, getCreateTemporaryTableString, getCrossJoinSeparator, getCurrentTimestampSelectString, getCurrentTimestampSQLFunctionName, getDefaultProperties, getDialect, getDialect, getDropForeignKeyString, getDropSequenceStrings, getDropTemporaryTableString, getForUpdateNowaitString, getForUpdateNowaitString, getForUpdateString, getForUpdateString, getForUpdateString, getFunctions, getHibernateTypeName, getHibernateTypeName, getIdentityColumnString, getIdentityColumnString, getIdentityInsertString, getIdentitySelectString, getIdentitySelectString, getKeywords, getLimitString, getLockingStrategy, getLowercaseFunction, getMaxAliasLength, getNativeIdentifierGeneratorClass, getNoColumnsInsertString, getNullColumnString, getReadLockString, getResultSet, getSelectClauseNullString, getSelectGUIDString, getTableComment, getTableTypeString, getTypeName, getTypeName, getTypeOverrides, getViolatedConstraintNameExtracter, getWriteLockString, hasAlterTable, hasDataTypeInIdentityColumn, hasSelfReferentialForeignKeyBug, isLockTimeoutParameterized, openQuote, performTemporaryTableDDLInIsolation, qualifyIndexName, quote, registerColumnType, registerColumnType, registerFunction, registerHibernateType, registerHibernateType, registerKeyword, registerResultSetOutParameter, replaceResultVariableInOrderByClauseWithPosition, requiresCastingOfParametersInSelectClause, supportsBindAsCallableArgument, supportsCascadeDelete, supportsCircularCascadeDeleteConstraints, supportsColumnCheck, supportsCommentOn, supportsCurrentTimestampSelection, supportsEmptyInList, supportsExistsInSelect, supportsExpectedLobUsagePattern, supportsIdentityColumns, supportsIfExistsAfterTableName, supportsIfExistsBeforeTableName, supportsInsertSelectIdentity, supportsLimitOffset, supportsLobValueChangePropogation, supportsLockTimeouts, supportsNotNullUnique, supportsOuterJoinForUpdate, supportsParametersInInsertSelect, supportsPooledSequences, supportsResultSetPositionQueryMethodsOnForwardOnlyCursor, supportsRowValueConstructorSyntax, supportsRowValueConstructorSyntaxInInList, supportsSubqueryOnMutatingTable, supportsSubselectAsInPredicateLHS, supportsTableCheck, supportsTemporaryTables, supportsTupleCounts, supportsTupleDistinctCounts, 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

### FirebirdDialect

    public FirebirdDialect()

Method Detail

### 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 `InterbaseDialect`
  Parameters:
    `sequenceName` - The name of the sequence
  Returns:
    The sequence drop commands

### getLimitString

    public String getLimitString(String sql,
                                 boolean hasOffset)

  Description copied from class: `Dialect`
  Apply s limit clause to the query.

  Typically dialects utilize `variable` limit clauses when they support limits. Thus, when building the select command we do not actually need to know the limit or the offest since we will just be using placeholders.

  Here we do still pass along whether or not an offset was specified so that dialects not supporting offsets can generate proper exceptions. In general, dialects will override one or the other of this method and `Dialect.getLimitString(String, int, int)`.

  Overrides:
    `getLimitString` in class `InterbaseDialect`
  Parameters:
    `sql` - The query to which to apply the limit.
    `hasOffset` - Is the query requesting an offset?
  Returns:
    the modified SQL

### bindLimitParametersFirst

    public boolean bindLimitParametersFirst()

  Description copied from class: `Dialect`
  Does the `LIMIT` clause come at the start of the `SELECT` statement, rather than at the end?

  Overrides:
    `bindLimitParametersFirst` in class `InterbaseDialect`
  Returns:
    true if limit parameters should come before other parameters

### bindLimitParametersInReverseOrder

    public boolean bindLimitParametersInReverseOrder()

  Description copied from class: `Dialect`
  ANSI SQL defines the LIMIT clause to be in the form LIMIT offset, limit. Does this dialect require us to bind the parameters in reverse order?

  Overrides:
    `bindLimitParametersInReverseOrder` in class `InterbaseDialect`
  Returns:
    true if the correct order is limit, offset

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