| Modifier and Type | Field and Description |
|---|---|
| private final LimitHandler | |
| private static final int |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public String | appendLockHint(LockOptions
The lock options to apply lockOptions, String The name of the table to which to apply the lock hint. tableName)Overrides org. |
| public boolean | areStringComparisonsCaseInsensitive()
Overrides org. |
| public IdentifierHelper | buildIdentifierHelper(IdentifierHelperBuilder
A semi-configured IdentifierHelper builder. builder, DatabaseMetaData Access to the metadata returned from the driver if needed and if available. dbMetaData)Warning may be Overrides org. |
| public char | closeQuote()
Overrides org. |
| public boolean | doesReadCommittedCauseWritersToBlockReaders()
Overrides org. |
| public boolean | doesRepeatableReadCauseReadersToBlockWriters()
Overrides org. |
| pack-priv static int | |
| public String | getCreateTemporaryTableColumnAnnotation(int
The SQL type code sqlTypeCode)Overrides org. |
| public String | getCurrentSchemaCommand()
Overrides org. |
| public String | getCurrentTimestampSelectString()
Overrides org. Retrieve the command used to retrieve the current timestamp from the database. |
| protected LimitHandler | |
| public IdentityColumnSupport | getIdentityColumnSupport()
Overrides org. IdentityColumnSupport
|
| public int | getInExpressionCountLimit()
Overrides org. IN predicate.
|
| public LimitHandler | getLimitHandler()
Returns the delegate managing LIMIT clause.
|
| public String | getLimitString(String
The query to which to apply the limit. querySelect, int The offset of the limit offset, int The limit of the limit ;) limit)Overrides org. |
| public NameQualifierSupport | getNameQualifierSupport()
Overrides org. |
| public String | getNoColumnsInsertString()
Overrides org. |
| protected SqlTypeDescriptor | getSqlTypeDescriptorOverride(int
A sqlCode)Types constant indicating the SQL column typeOverrides org. SqlTypeDescriptor that should be used to handle the given JDBC type code.
|
| public char | openQuote()
Overrides org. |
| public boolean | supportsCircularCascadeDeleteConstraints()
Overrides org. |
| public boolean | supportsLimit()
Overrides org. |
| public boolean | supportsLimitOffset()
Overrides org. |
| public boolean | supportsLobValueChangePropogation()
Overrides org. |
| public boolean | supportsResultSetPositionQueryMethodsOnForwardOnlyCursor()
Overrides org. |
| public boolean | supportsVariableLimit()
Overrides org. |
| public boolean | useMaxForLimit()
Overrides org. |
| limitHandler | back to summary |
|---|---|
| private final LimitHandler limitHandler | |
| PARAM_LIST_SIZE_LIMIT | back to summary |
|---|---|
| private static final int PARAM_LIST_SIZE_LIMIT | |
| SQLServerDialect | back to summary |
|---|---|
| public SQLServerDialect() Constructs a SQLServerDialect | |
| appendLockHint | back to summary |
|---|---|
| public String appendLockHint(LockOptions lockOptions, String tableName) Overrides org. Doc from org. Some dialects support an alternative means to SELECT FOR UPDATE, whereby a "lock hint" is appended to the table name in the from clause. contributed by Helge Schulz
| |
| areStringComparisonsCaseInsensitive | back to summary |
|---|---|
| public boolean areStringComparisonsCaseInsensitive() Overrides org. Doc from org. Are string comparisons implicitly case insensitive. In other words, does [where 'XYZ' = 'xyz'] resolve to true?
| |
| buildIdentifierHelper | back to summary |
|---|---|
| public IdentifierHelper buildIdentifierHelper(IdentifierHelperBuilder builder, DatabaseMetaData dbMetaData) throws SQLException Overrides org. Doc from org. Build the IdentifierHelper indicated by this Dialect for handling identifier conversions.
Returning The incoming builder will have the following set:
By default Hibernate will do the following:
| |
| closeQuote | back to summary |
|---|---|
| public char closeQuote() Overrides org. Doc from org. The character specific to this dialect used to close a quoted identifier.
| |
| doesReadCommittedCauseWritersToBlockReaders | back to summary |
|---|---|
| public boolean doesReadCommittedCauseWritersToBlockReaders() Overrides org. Doc from org. For the underlying database, is READ_COMMITTED isolation implemented by forcing readers to wait for write locks to be released?
| |
| doesRepeatableReadCauseReadersToBlockWriters | back to summary |
|---|---|
| public boolean doesRepeatableReadCauseReadersToBlockWriters() Overrides org. Doc from org. For the underlying database, is REPEATABLE_READ isolation implemented by forcing writers to wait for read locks to be released?
| |
| getAfterSelectInsertPoint | back to summary |
|---|---|
| pack-priv static int getAfterSelectInsertPoint(String sql) | |
| getCreateTemporaryTableColumnAnnotation | back to summary |
|---|---|
| public String getCreateTemporaryTableColumnAnnotation(int sqlTypeCode) Overrides org. Doc from org. Annotation to be appended to the end of each COLUMN clause for temporary tables. | |
| getCurrentSchemaCommand | back to summary |
|---|---|
| public String getCurrentSchemaCommand() Overrides org. Doc from org. Get the SQL command used to retrieve the current schema name. Works in conjunction
with | |
| getCurrentTimestampSelectString | back to summary |
|---|---|
| public String getCurrentTimestampSelectString() Overrides org. Doc from org. The current_timestamp is more accurate, but only known to be supported in SQL Server 7.0 and later and Sybase not known to support it at all Retrieve the command used to retrieve the current timestamp from the database. | |
| getDefaultLimitHandler | back to summary |
|---|---|
| protected LimitHandler getDefaultLimitHandler() | |
| getIdentityColumnSupport | back to summary |
|---|---|
| public IdentityColumnSupport getIdentityColumnSupport() Overrides org. Doc from org. Get the appropriate
| |
| getInExpressionCountLimit | back to summary |
|---|---|
| public int getInExpressionCountLimit() Overrides org. Doc from org. Return the limit that the underlying database places on the number of elements in an
| |
| getLimitHandler | back to summary |
|---|---|
| public LimitHandler getLimitHandler() Overrides org. Doc from org. Returns the delegate managing LIMIT clause.
| |
| getLimitString | back to summary |
|---|---|
| public String getLimitString(String querySelect, int offset, int limit) Overrides org. Doc from org. Given a limit and an offset, apply the limit clause to the query. | |
| getNameQualifierSupport | back to summary |
|---|---|
| public NameQualifierSupport getNameQualifierSupport() Overrides org. Doc from org. By default interpret this based on DatabaseMetaData.
| |
| getNoColumnsInsertString | back to summary |
|---|---|
| public String getNoColumnsInsertString() Overrides org. Doc from org. The fragment used to insert a row without specifying any column values. This is not possible on some databases. | |
| getSqlTypeDescriptorOverride | back to summary |
|---|---|
| protected SqlTypeDescriptor getSqlTypeDescriptorOverride(int sqlCode) Overrides org. Doc from org. Returns the
| |
| openQuote | back to summary |
|---|---|
| public char openQuote() Overrides org. Doc from org. The character specific to this dialect used to begin a quoted identifier.
| |
| supportsCircularCascadeDeleteConstraints | back to summary |
|---|---|
| public boolean supportsCircularCascadeDeleteConstraints() Overrides org. Doc from org. Does this dialect support definition of cascade delete constraints which can cause circular chains?
| |
| supportsLimit | back to summary |
|---|---|
| public boolean supportsLimit() Overrides org. Doc from org. Does this dialect support some form of limiting query results via a SQL clause?
| |
| supportsLimitOffset | back to summary |
|---|---|
| public boolean supportsLimitOffset() Overrides org. Doc from org. Does this dialect's LIMIT support (if any) additionally support specifying an offset?
| |
| supportsLobValueChangePropogation | back to summary |
|---|---|
| public boolean supportsLobValueChangePropogation() Overrides org. Doc from org. Does the dialect support propagating changes to LOB values back to the database? Talking about mutating the internal value of the locator as opposed to supplying a new locator instance...
For BLOBs, the internal value might be changed by:
For CLOBs, the internal value might be changed by:
NOTE : I do not know the correct answer currently for
databases which (1) are not part of the cruise control process
or (2) do not
| |
| supportsResultSetPositionQueryMethodsOnForwardOnlyCursor | back to summary |
|---|---|
| public boolean supportsResultSetPositionQueryMethodsOnForwardOnlyCursor() Overrides org. Doc from org. Does this dialect support asking the result set its positioning
information on forward only cursors. Specifically, in the case of
scrolling fetches, Hibernate needs to use
NOTE : this is highly driver dependent!
| |
| supportsVariableLimit | back to summary |
|---|---|
| public boolean supportsVariableLimit() Overrides org. Doc from org. Does this dialect support bind variables (i.e., prepared statement parameters) for its limit/offset?
| |
| useMaxForLimit | back to summary |
|---|---|
| public boolean useMaxForLimit() Overrides org. Doc from org. Does the LIMIT clause take a "maximum" row number instead of a total number of returned rows? This is easiest understood via an example. Consider you have a table with 20 rows, but you only want to retrieve rows number 11 through 20. Generally, a limit with offset would say that the offset = 11 and the limit = 10 (we only want 10 rows at a time); this is specifying the total number of returned rows. Some dialects require that we instead specify offset = 11 and limit = 20, where 20 is the "last" row we want relative to offset (i.e. total number of rows = 20 - 11 = 9) So essentially, is limit relative from offset? Or is limit absolute?
| |