|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.hibernate.dialect.Dialect
org.hibernate.dialect.DB2Dialect
org.hibernate.dialect.DerbyDialect
public class DerbyDialect
Hibernate Dialect for Cloudscape 10 - aka Derby. This implements both an override for the identity column generator as well as for the case statement issue documented at: http://www.jroller.com/comments/kenlars99/Weblog/cloudscape_soon_to_be_derby
| Field Summary |
|---|
| Fields inherited from class org.hibernate.dialect.Dialect |
|---|
CLOSED_QUOTE, DEFAULT_BATCH_SIZE, NO_BATCH, QUOTE |
| Constructor Summary | |
|---|---|
DerbyDialect()
|
|
| Method Summary | |
|---|---|
CaseFragment |
createCaseFragment()
Return the case statement modified for Cloudscape. |
boolean |
dropConstraints()
Do we need to drop constraints before dropping tables in this dialect? |
String |
getCrossJoinSeparator()
Get the separator to use for defining cross joins when translating HQL queries. |
String |
getForUpdateString()
Get the string to append to SELECT statements to acquire locks for this dialect. |
String |
getLimitString(String query,
int offset,
int limit)
Given a limit and an offset, apply the limit clause to the query. |
String |
getQuerySequencesString()
Get the select command used retrieve the names of all sequences. |
String |
getReadLockString(int timeout)
Get the string to append to SELECT statements to acquire WRITE locks for this dialect. |
String |
getWriteLockString(int timeout)
Get the string to append to SELECT statements to acquire WRITE locks for this dialect. |
boolean |
supportsCommentOn()
|
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 |
supportsLobValueChangePropogation()
Does the dialect support propogating 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... |
boolean |
supportsSequences()
Does this dialect support sequences? |
boolean |
supportsVariableLimit()
Does this dialect support bind variables (i.e., prepared statement parameters) for its limit/offset? |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public DerbyDialect()
| Method Detail |
|---|
public String getCrossJoinSeparator()
Dialect
getCrossJoinSeparator in class Dialectpublic CaseFragment createCaseFragment()
createCaseFragment in class DialectCaseFragment strategy.public boolean dropConstraints()
Dialect
dropConstraints in class DB2Dialectpublic boolean supportsSequences()
Dialect
supportsSequences in class DB2Dialectpublic boolean supportsLimit()
Dialect
supportsLimit in class DB2Dialectpublic boolean supportsCommentOn()
supportsCommentOn in class DB2Dialectpublic boolean supportsLimitOffset()
Dialect
supportsLimitOffset in class Dialectpublic String getForUpdateString()
Dialect
getForUpdateString in class DB2Dialectpublic String getWriteLockString(int timeout)
Dialect
getWriteLockString in class Dialecttimeout - in milliseconds, -1 for indefinite wait and 0 for no wait.
public String getReadLockString(int timeout)
Dialect
getReadLockString in class Dialecttimeout - in milliseconds, -1 for indefinite wait and 0 for no wait.
public String getLimitString(String query,
int offset,
int limit)
Query
[ORDER BY clause]
[result offset clause]
[fetch first clause]
[FOR UPDATE clause]
[WITH {RR|RS|CS|UR}]
getLimitString in class Dialectquery - The query to which to apply the limit.offset - The offset of the limitlimit - The limit of the limit ;)
public boolean supportsVariableLimit()
Dialect
supportsVariableLimit in class Dialectpublic String getQuerySequencesString()
Dialect
getQuerySequencesString in class DB2DialectSchemaUpdatepublic boolean supportsLobValueChangePropogation()
DialectBlob.setBinaryStream(long),
Blob.setBytes(long, byte[]),
Blob.setBytes(long, byte[], int, int),
or Blob.truncate(long).
For CLOBs, the internal value might be changed by:
Clob.setAsciiStream(long),
Clob.setCharacterStream(long),
Clob.setString(long, String),
Clob.setString(long, String, int, int),
or Clob.truncate(long).
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 Dialect.supportsExpectedLobUsagePattern().
supportsLobValueChangePropogation in class DB2Dialect
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||