Package simpleorm.drivers
Class SDriverHSQLH2
java.lang.Object
simpleorm.sessionjdbc.SDriver
simpleorm.drivers.SDriverHSQLH2
- Direct Known Subclasses:
SDriverH2
,SDriverHSQL
Common code between HSQL and H2.
Note that thewe toy databases do not
support locking, so is not safe in multi user mode even with optimistic
locking. See
SDriver.supportsLocking()
.-
Nested Class Summary
Nested classes/interfaces inherited from class simpleorm.sessionjdbc.SDriver
SDriver.OffsetStrategy
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected String
columnTypeSQL
(SFieldScalar field, String defalt) Used to override the default.protected String
createSequenceDDL
(String name) protected String
dropSequenceDDL
(String name) protected long
generateKeySequence
(SRecordMeta<?> rec, SFieldScalar keyFld) protected SDriver.OffsetStrategy
JDBC prefered, if jdbc driver has a sensible scrollable resultset implemntation QUERY if database would handle it better via some proprietary sql extension (eg.protected String
limitSQL
(long offset, long limit) Drivers that choose to implement a QUERY offset strategy should return the limit statment hereboolean
boolean
HSQL has a major hole but optimistic locking papers over it.Methods inherited from class simpleorm.sessionjdbc.SDriver
addNull, alterTableAddColumnSQL, alterTableDropColumnSQL, appendColumnName, appendQuotedIdentifier, appendQuotedIdentifier, appendTableName, clauseSeparator, createTableSQL, deleteSQL, driverName, dropTableNoError, foreignKeysSQL, forUpdateSQL, fromSQL, generateKeySelectMax, getLogger, getSession, indexKeySQL, insertSQL, joinSQL, makeForeignKeyIndexSQL, mapForeignKeys, maxIdentNameLength, postColumnSQL, postFromSQL, postTablePostParenSQL, postTablePreParenSQL, primaryKeySQL, queryExecuteFactory, registerDriver, selectSQL, selectSQL, updateSQL, whereSQL, wholeColumnSQL
-
Constructor Details
-
SDriverHSQLH2
public SDriverHSQLH2()
-
-
Method Details
-
supportsLocking
public boolean supportsLocking()HSQL has a major hole but optimistic locking papers over it. H2 might support locking?- Overrides:
supportsLocking
in classSDriver
-
columnTypeSQL
Description copied from class:SDriver
Used to override the default. ONLY called if no fld.defaultSqlDataType has been specified, ie. only used to override the SFieldScalar.defaultSqlDataType.- Overrides:
columnTypeSQL
in classSDriver
-
generateKeySequence
- Overrides:
generateKeySequence
in classSDriver
-
supportsKeySequences
public boolean supportsKeySequences()- Overrides:
supportsKeySequences
in classSDriver
-
createSequenceDDL
- Overrides:
createSequenceDDL
in classSDriver
-
dropSequenceDDL
- Overrides:
dropSequenceDDL
in classSDriver
-
getOffsetStrategy
Description copied from class:SDriver
JDBC prefered, if jdbc driver has a sensible scrollable resultset implemntation QUERY if database would handle it better via some proprietary sql extension (eg. LIMIT) BULK Simpleorm will get the whole resultset and skip de first row. Worst case scenario :(Defaults to BULK
- Overrides:
getOffsetStrategy
in classSDriver
-
limitSQL
Description copied from class:SDriver
Drivers that choose to implement a QUERY offset strategy should return the limit statment here
-