Package simpleorm.drivers
Class SDriverOracle
- java.lang.Object
-
- simpleorm.sessionjdbc.SDriver
-
- simpleorm.drivers.SDriverOracle
-
public class SDriverOracle extends SDriver
This contains Oracle specific code.In oracle VARCHAR2 '' == null. Ie. min string length is 2. VARCHAR == VARCHAR2? but not recommended? VARCHARs max size 2000 or 4000 Oracle 8. CHARS max size 2000 all versions. LONG for larger strings.
Dates DATE, TIMESTAMP [WITH TIMEZONE].
It is reported that CHARs need to be trimed for comparison?
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class simpleorm.sessionjdbc.SDriver
SDriver.OffsetStrategy
-
-
Constructor Summary
Constructors Constructor Description SDriverOracle()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.String
columnTypeSQL(SFieldScalar field, java.lang.String defalt)
Used to override the default.protected java.lang.String
createSequenceDDL(java.lang.String name)
protected java.lang.String
driverName()
The driver name to be compared to getMetaData().getDriverName()protected java.lang.String
dropSequenceDDL(java.lang.String name)
protected long
generateKeySequence(SRecordMeta<?> rec, SFieldScalar keyFld)
Specializes SDriver.generateKeySequence using Oracle SEQUENCEs.protected SDriver.OffsetStrategy
getOffsetStrategy()
JDBC prefered, if jdbc driver has a sensible scrollable resultset implemntation QUERY if database would handle it better via some proprietary sql extension (eg.int
maxIdentNameLength()
The maximum size for table names and foreign key constraint names.boolean
supportsKeySequences()
-
Methods inherited from class simpleorm.sessionjdbc.SDriver
addNull, alterTableAddColumnSQL, alterTableDropColumnSQL, appendColumnName, appendQuotedIdentifier, appendQuotedIdentifier, appendTableName, clauseSeparator, createTableSQL, deleteSQL, dropTableNoError, foreignKeysSQL, forUpdateSQL, fromSQL, generateKeySelectMax, getLogger, getSession, indexKeySQL, insertSQL, joinSQL, limitSQL, makeForeignKeyIndexSQL, mapForeignKeys, postColumnSQL, postFromSQL, postTablePostParenSQL, postTablePreParenSQL, primaryKeySQL, queryExecuteFactory, registerDriver, selectSQL, selectSQL, supportsLocking, updateSQL, whereSQL, wholeColumnSQL
-
-
-
-
Method Detail
-
driverName
protected java.lang.String driverName()
Description copied from class:SDriver
The driver name to be compared to getMetaData().getDriverName()- Overrides:
driverName
in classSDriver
-
maxIdentNameLength
public int maxIdentNameLength()
Description copied from class:SDriver
The maximum size for table names and foreign key constraint names.- Overrides:
maxIdentNameLength
in classSDriver
-
generateKeySequence
protected long generateKeySequence(SRecordMeta<?> rec, SFieldScalar keyFld)
Specializes SDriver.generateKeySequence using Oracle SEQUENCEs.- Overrides:
generateKeySequence
in classSDriver
-
supportsKeySequences
public boolean supportsKeySequences()
- Overrides:
supportsKeySequences
in classSDriver
-
createSequenceDDL
protected java.lang.String createSequenceDDL(java.lang.String name)
- Overrides:
createSequenceDDL
in classSDriver
-
dropSequenceDDL
protected java.lang.String dropSequenceDDL(java.lang.String name)
- Overrides:
dropSequenceDDL
in classSDriver
-
columnTypeSQL
protected java.lang.String columnTypeSQL(SFieldScalar field, java.lang.String defalt)
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
-
getOffsetStrategy
protected SDriver.OffsetStrategy 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
-
-