public abstract class SQLWrapper extends AbstractIndexedFile
Modifier and Type | Field and Description |
---|---|
protected java.sql.Connection |
connection |
protected ISMObject[] |
nativeKeys |
protected int |
openMode |
protected boolean |
postFixTableNameToImplicitDatabaseKey |
protected java.sql.ResultSet |
resultSet |
protected boolean |
sequentialKeyGeneration |
protected boolean |
suppressNextReadCurrent |
delegateDAO
fileName, ownerClassName, status
EBCDIC_JIT_PD_SUPPORT_FOR_SEQ_FILES, INDEX_FOR_NON_ARRAY_VERSION_OF_FIELD, INDEX_ZERO, log, tmp_lengthofAssignedValue, totalRuntime_allocate, totalRuntime_calcFieldOffsets, totalRuntime_getMemoryPosition, totalRuntime_setFieldFormatted
ACCESS_MODE_DYNAMIC, ACCESS_MODE_RANDOM, ACCESS_MODE_SEQUENTIAL, ASCENDING_RECORD_KEY, CONDITION_TYPE_EQUALS, CONDITION_TYPE_GREATER, CONDITION_TYPE_GREATER_OR_EQUALS, CONDITION_TYPE_IGNORE, CONDITION_TYPE_IGNORE_FOR_SQL_LIKE, CONDITION_TYPE_LESS, CONDITION_TYPE_LESS_OR_EQUALS, CONDITION_TYPE_LIKE, CONDITION_TYPE_NO_CONDITION, CONDITION_TYPE_NOT_ASSIGNED, DESCENDING_RECORD_KEY, OPEN_MODE_EXTEND, OPEN_MODE_I_O, OPEN_MODE_INPUT, OPEN_MODE_NOT_OPENED, OPEN_MODE_OUTPUT, STATUS_AT_END, STATUS_DUP_KEY, STATUS_FAILED_CLOSING, STATUS_INCORRECT_READ_OF_UNOPENED_FILE, STATUS_INCORRECT_RECORDSIZE_REWRITE, STATUS_INSERT_ERR_INAPPROPRIATE_FILE, STATUS_INSERT_ERR_INVALID_KEY, STATUS_LOCK, STATUS_NOT_FOUND, STATUS_REWRITE_WITHOUT_READ, STATUS_SM_FAIL_UNKOWN_REASON, STATUS_SM_NOT_ASSIGNED, STATUS_SUCCESS, UNCERTAIN_OF_RETURN_VALUE
Constructor and Description |
---|
SQLWrapper()
for internal use only ...
|
SQLWrapper(BaseService owner) |
Modifier and Type | Method and Description |
---|---|
protected int |
_clear(ISQLWrapper wrapper) |
int |
_close(ISQLWrapper wrapper) |
void |
_commit(ISQLWrapper wrapper) |
protected int |
_deleteAllRecord(ISQLWrapper wrapper) |
protected int |
_deleteRecord(ISQLWrapper wrapper) |
protected int |
_insertRecord(ISQLWrapper wrapper) |
int |
_nextRecord(ISQLWrapper wrapper) |
int |
_open(ISQLWrapper wrapper,
int openMode) |
int |
_prevRecord(ISQLWrapper wrapper) |
int |
_readRecord(ISQLWrapper wrapper) |
int |
_readWithLock(ISQLWrapper wrapper) |
void |
_rollback(ISQLWrapper wrapper) |
protected int |
_seekRecord(ISMObject[] keys,
int conditionType) |
void |
_unlock(ISQLWrapper wrapper) |
int |
_updateRecord(ISQLWrapper wrapper) |
void |
addRecordKey(ISMObject recordKey,
java.lang.Boolean ascendDescend)
Allows adding single or composite record keys - one at a time & specifying the Ascending/Descending order
|
void |
addSearchParameter(double theValue) |
void |
addSearchParameter(java.lang.String theValue) |
void |
assignAdditionalKeyPosition(ISMObject theField,
int position)
Support for Tandem
START ....
|
void |
assignAdditionalSQLConditions(java.lang.String condition)
This method allows inserting additional conditions - e.g.
|
void |
assignAdditionalSQLConditions(java.lang.StringBuilder condition)
Hierarchical tables will define additional SQLConditions - e.g.
|
void |
assignAdditionalSQLOrderBy(java.lang.String newValue)
This method allows inserting additional Ordering clauses
It is useful in hierarchical tables will define additional SQLConditions - e.g.
|
void |
assignAlternateKey(ISMObject alternateKey) |
void |
assignCachedSeekValues(java.util.List objects)
for internal use only
|
void |
assignChangeGEConditonToLIKE(boolean newValue)
The system can replace GE searches to LIKE statements.
|
void |
assignChangeGTEQ2EQForLIKECondition(boolean useEQForExactLenghtMatch)
Only applies when OR_CHANGE_GE_CONDITION_TO_LIKE__DEFAULT=true
E.g. |
void |
assignConnection(java.sql.Connection connection) |
void |
assignDbDecorator(ACMDbDecorator dbDecorator) |
void |
assignExpandGTEQSearches(boolean expandGTEQSearches)
(default is true) Example: Lets say there are 3 key fields involved in a search with condition GTEQ
If flag is set to true (default) - then the following SQL condition will be generated (A > ? or (A = ? and B > ?) or (A = ? and B = ? and C >= ?)) With flag is set to FALSE - the following will be generated (A >= ?) and (B >= ?) and (C >= ?) |
void |
assignFetchDirectionIsForward(java.lang.Boolean direction) |
void |
assignFetchSize(int newFetchSize)
maps onto ResultSet.setFetchSize
Gives the JDBC driver a hint as to the number of rows that should be fetched from the
database when more rows are needed for this ResultSet object.
|
void |
assignFileOpened(boolean fileOpened) |
void |
assignGDGCondition(java.lang.String gdgProperty)
Additional SQL statement to be read from gdg.properties file.
|
void |
assignGDGProperty(java.lang.String gdgProperty)
Additional SQL statement to be read from gdg.properties file.
|
void |
assignGenerate_OrderBy_ForReadStatements(boolean enabled)
READ() statement on DB tables with MANY rows, issues an ORDER BY on the SELECT which may have a big performance impact.
|
void |
assignIgnoreOriginalKeys(boolean newValue)
for internal use only
|
void |
assignKeyIsUnique(boolean keyUnique)
used primarily in CICS Queues.
|
void |
assignKeyValue(AbstractDataObject keyValueField)
Used only used by CicsPersistent Subclasses.
|
void |
assignKeyValue(java.lang.String value)
Deprecated.
|
void |
assignLastSeekCondition(int lastSeekCondition) |
void |
assignLastSeekConditionLookedForEquality(boolean lastSeekConditionLookedForEquality) |
void |
assignLowerLimitForExpandGTEQSearches(int range)
(default is -1 - disabled) Only works when assignExpandGTEQSearches(true);
Example: Lets say there are 3 key fields involved in a search with condition GTEQ In default settings, the following SQL condition will be generated |
void |
assignOpenMode(int openMode) |
void |
assignRecordKey(ISMObject recordKey)
Used only used by CicsPersistent Subclasses.
|
void |
assignRecordKey(ISMObject[] recordKeys)
Used only used by CicsPersistent Subclasses.
|
void |
assignRecordKeysAllDescending()
record keys are descending (used in Db400 classes).
|
void |
assignRelativeKey(AbstractCBLNumeric relativeKey) |
void |
assignResultSet(java.sql.ResultSet resultSet) |
void |
assignResultSetFetchSize(int resultSetFetchSize) |
void |
assignRowFacade(RowFacade rowFacade) |
void |
assignSequentialKeyGeneration(boolean sequentialKeyGeneration) |
void |
assignSQLConditions(java.lang.String condition)
Ignore the inbuilt KEY (defined by assignRecordKey(...)) - and use this condition instead Please note program will be responsible for passing additional parameters. |
void |
assignSQLTableName(java.lang.String newName)
Called by "persistence" Classes themselves
allows overriding the default table name.
|
void |
assignSuppressSeek(boolean newValue)
for internal use only -
For VSAM SEEK / READ / ...
|
void |
assignTableName(java.lang.String newName)
Deprecated.
|
void |
assignThrowInvalidKeyException(boolean newValue)
for internal use only -
For VSAM SEEK / READ / ...
|
void |
assignTopRowSelectStrategyCount(int count)
(Default = -1) When set to 0 or 1 , the Object-Relation SQL Generator will produce:
|
void |
assignTopRowSelectStrategyRange(int startRowNumber,
int count)
Similar to assignTopRowSelectStrategyCount - but aslso defines starting points
|
void |
assignTreatAsSQLWrapper(boolean treatAsSQLWrapper)
Used only used by CicsPersistent Subclasses.
|
void |
assignUpperLimitForExpandGTEQSearches(int range)
(default is -1 - disabled) Only works when assignExpandGTEQSearches(true);
Example: Lets say there are 3 key fields involved in a search with condition GTEQ In default settings, the following SQL condition will be generated |
void |
clearSearchParameter() |
protected java.util.List<java.lang.Object> |
createAndretrieveSearchParameterInstance()
For internal use only
|
boolean |
isAllowedToExpandGTEQSearches()
internal use only.
|
boolean |
isChangeGEConditonToLIKE()
The system can replace GE searches to LIKE statements.
|
boolean |
isChangeGTEQ2EQForLIKECondition()
For internal Use only.
|
boolean |
isFetchDirectionBackward() |
boolean |
isFetchDirectionForward() |
boolean |
isFileOpened() |
boolean |
isIgnoreOriginalKeys()
for internal use only
|
boolean |
isKept() |
boolean |
isKeyUnique() |
boolean |
isLastSeekConditionLookedForEquality() |
boolean |
isReduceGEorEQ()
for internal use only
|
boolean |
isSeekSuppressed()
for internal use only -
For VSAM SEEK / READ / ...
|
boolean |
isSequentialKeyGeneration() |
boolean |
isSuppressNextReadCurrent() |
protected void |
readCurrent(boolean useNativeKeys)
Used in DMS and ILE DAO
|
void |
reduceGEorEQ(boolean newValue)
used in AS400 / DB400 to increase speed of searches
|
void |
releaseResources()
this is called internally - after a program is CANCEL'ed.
|
void |
releaseResources(boolean forceRelease)
this is called internally - after a program is CANCEL'ed.
|
void |
resetRowFacade() |
protected void |
restoreResultSet(int conditionType,
ISMObject[] searchKeys)
translation of COBOL START
The method will open a result-set, read the information and then Close the result-set.
|
int |
retreiveLowerLimitForExpandGTEQSearches() |
int |
retreiveUpperLimitForExpandGTEQSearches() |
java.util.List<java.lang.Object> |
retrieveAdditionalSearchParameters()
assignSQLCondition can also have conditions such as "NAME = ?".
|
java.lang.StringBuilder |
retrieveAdditionalSQLCondition()
Hierarchical tables will define additional SQLConditions - e.g.
|
java.lang.StringBuilder |
retrieveAdditionalSQLOrderBy() |
java.util.List<java.lang.Boolean> |
retrieveAscentDescendOrder()
used internal
|
java.util.List |
retrieveCachedSeekValues()
for internal use only
|
java.sql.Connection |
retrieveConnection() |
ACMDbDecorator |
retrieveDbDecorator() |
protected ISMObject[] |
retrieveForeignKeys()
Stub method to be over-written by LinkedSQLWrapper class.
|
boolean |
retrieveGenerate_OrderBy_ForReadStatements()
for internal use
|
ISMObject |
retrieveImplicitDatabaseKey()
Native Keys refer to either
a.
|
int |
retrieveLastSeekCondition() |
ISMObject[] |
retrieveNativeKeys()
Native Keys refer to either
a.
|
int |
retrieveOpenMode() |
ISMObject |
retrieveRecordKey()
for internal use only
|
java.lang.String |
retrieveRecordKeyValue()
Used only used by CicsPersistent Subclasses.
|
java.sql.ResultSet |
retrieveResultSet() |
int |
retrieveResultSetFetchSize() |
RowFacade |
retrieveRowFacade() |
java.lang.String |
retrieveTableName() |
boolean |
retrieveThrowInvalidKeyException()
for internal use only -
For VSAM SEEK / READ / ...
|
int |
retrieveTopRowSelectStrategyCount()
For internal use only
(Default = -1) When set to 0 or 1 , the Object-Relation SQL Generator will produce:
|
int |
retrieveTopRowSelectStrategyStartingRow()
for internal use only
|
void |
setLock(boolean kept) |
void |
setRelativeKey(AbstractCBLNumeric relativeKey) |
protected void |
trimCachedSeekValues(int numberOfFields)
for internal use only
|
boolean |
useOidTableForKeyGeneration()
Stub method to be over-written by LinkedSQLWrapper class.
|
int |
validateConditionType(int conditionType)
For internal use only
reverts to defaults for CONDITION_TYPE_NO_CONDITION and CONDITION_TYPE_NOT_ASSIGNED
|
_assignKeyValue, assignAccessMode, assignDelegateDAO, assignStatus, clear, close, commit, delete, deleteAllRecord, deleteRecord, insert, insertRecord, next, nextRecord, open, prev, prevRecord, read, readRecord, readWithLock, retrieveDelegateDAO, rollback, seek, seek, seekRecord, seekRecord, seekRecord, unlock, update, updateRecord
assignFileName, assignLock, assignStatus, assignStatusAsPrimitive, assignStatusValue, assignStatusValue, readRow, retrieveAccessMode, retrieveFileName, retrieveFileName, retrieveFirstLevelEntry, retrieveSessionId, retrieveStatusField, retrieveStatusValue
addCorrespondingValue, addCorrespondingValue, allocate, assignAddressTo, assignAddressTo, assignBean, assignBytesEncoded, assignCachedInitializationValue, assignCorrespondingValue, assignCorrespondingValue, assignDefaultValue, assignDependingField, assignEbcdicBytes, assignEbcdicJIT_PdSupportForSequentialFiles, assignEncodedValue, assignExemptFromMemRelease, assignHighValues, assignInternalVars, assignLowValues, assignRawEbcdicBytes, assignRecordSize, assignRedefines, assignRedefines, assignSessionId, assignStringFormatted, assignSubstring, assignSubstring, assignToAddressOf, assignToAddressOf, assignToAddressOf, assignToAddressOf, assignToAllFields, assignValue, assignValue, assignValue, assignValue, assignValue, assignValue, assignValue, calculateStorageSize, containsPointers, equals, equals, equals, equals, equalsRightTrimmed, fieldsCount, fill, fill, fill, fill, fill, getValue, hasPackedDecimalFields, initDefaultValues, initialize, initialize, isExemptFromMemRelease, isFilled, isFilled, isFilled, isFilled, isGreaterThan, isGreaterThan, isGreaterThan, isHighValues, isInvolvedInDependency, isInvolvedInExternalDependency, isLessOrEqualTo, isLessOrEqualTo, isLessOrEqualTo, isLessOrEqualTo, isLessOrEqualTo, isLessThan, isLessThan, isLessThan, isLessThan, isLessThan, isLowValues, isRedefinedByAnotherClass, isResourceAlreadyReleased, lengthOf, printFieldPosition, printFieldValues, printOrderedFieldPosition, PrintOrderedFieldPositionsAndValue, resetCachedValues, resetCompressedFieldList, resetStructure, resize, retrieveActualLength, retrieveAsString, retrieveCachedInitializationValue, retrieveCompressedFields, retrieveDependedFieldsList, retrieveEbcdicBytes, retrieveEbcdicValue, retrieveEncodedValue, retrieveField, retrieveField, retrieveFieldAtMemoryPosition, retrieveFieldFormatted, retrieveFields, retrieveIsTargetOfPointers, retrievePrimitiveFields, retrieveRawEbcdicBytes, retrieveSQLObject, retrieveStorageCellSize, retrieveStorageChars, retrieveSubstring, retrieveSubstring, retrieveTopLevelField, retrieveValue, retrieveValue, setValue, stringValue, subtractCorrespondingValue, subtractCorrespondingValue, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
assignStatusValue, retrieveAccessMode, retrieveFileName, retrieveSessionId, retrieveStatusValue
assignExemptFromMemRelease, assignSessionId, assignValue, initialize, isExemptFromMemRelease, isResourceAlreadyReleased, resetStructure, retrieveActualLength, retrieveAsString, retrieveField, retrieveField, retrieveTopLevelField, retrieveValue, stringValue
protected ISMObject[] nativeKeys
protected java.sql.Connection connection
protected boolean postFixTableNameToImplicitDatabaseKey
protected int openMode
protected boolean sequentialKeyGeneration
protected java.sql.ResultSet resultSet
protected boolean suppressNextReadCurrent
public SQLWrapper()
public SQLWrapper(BaseService owner)
public int retrieveOpenMode()
retrieveOpenMode
in interface ISQLWrapper
retrieveOpenMode
in class AbstractBasePersistence
public void assignRecordKey(ISMObject recordKey)
ISQLWrapper
public void assignRecordKey(ISMObject[] recordKeys)
ISQLWrapper
public void addRecordKey(ISMObject recordKey, java.lang.Boolean ascendDescend)
recordKey
- - ACMOBjectascendDescend
- - IPersistence.DESCENDING or IPersistence.ASCENDINGpublic java.util.List<java.lang.Boolean> retrieveAscentDescendOrder()
public void assignRecordKeysAllDescending()
keyDescending
- public void assignAlternateKey(ISMObject alternateKey)
public void setRelativeKey(AbstractCBLNumeric relativeKey)
public void assignRelativeKey(AbstractCBLNumeric relativeKey)
public void resetRowFacade()
public RowFacade retrieveRowFacade()
public ISMObject[] retrieveNativeKeys()
public ISMObject retrieveImplicitDatabaseKey()
protected int _seekRecord(ISMObject[] keys, int conditionType) throws IOStatusException
_seekRecord
in class AbstractIndexedFile
IOStatusException
protected void restoreResultSet(int conditionType, ISMObject[] searchKeys) throws java.sql.SQLException
keys
- conditionType
- IOStatusException
- public int seek(ACMField[] keys, int conditionType) {
try {
return seekRecord(keys, conditionType);
} catch (IOStatusException e) {
}
return this.getStatusValue();
}java.sql.SQLException
public void _commit(ISQLWrapper wrapper) throws IOCriticalException
_commit
in class AbstractIndexedFile
IOCriticalException
public void _rollback(ISQLWrapper wrapper) throws IOCriticalException
_rollback
in class AbstractIndexedFile
IOCriticalException
public int _nextRecord(ISQLWrapper wrapper) throws IOStatusException
_nextRecord
in class AbstractIndexedFile
IOStatusException
public int _prevRecord(ISQLWrapper wrapper) throws IOStatusException
_prevRecord
in class AbstractIndexedFile
IOStatusException
public int _readRecord(ISQLWrapper wrapper) throws IOStatusException
_readRecord
in class AbstractIndexedFile
IOStatusException
public int _readWithLock(ISQLWrapper wrapper)
_readWithLock
in class AbstractIndexedFile
public void _unlock(ISQLWrapper wrapper)
_unlock
in class AbstractIndexedFile
public int _open(ISQLWrapper wrapper, int openMode) throws IOCriticalException
_open
in class AbstractIndexedFile
IOCriticalException
public int _close(ISQLWrapper wrapper) throws IOCriticalException
_close
in class AbstractIndexedFile
IOCriticalException
protected int _deleteRecord(ISQLWrapper wrapper) throws IOStatusException
_deleteRecord
in class AbstractIndexedFile
IOStatusException
protected int _deleteAllRecord(ISQLWrapper wrapper) throws IOStatusException
_deleteAllRecord
in class AbstractIndexedFile
IOStatusException
protected int _clear(ISQLWrapper wrapper) throws IOStatusException
_clear
in class AbstractIndexedFile
IOStatusException
protected int _insertRecord(ISQLWrapper wrapper) throws IOStatusException
_insertRecord
in class AbstractIndexedFile
IOStatusException
public int _updateRecord(ISQLWrapper wrapper) throws IOStatusException
_updateRecord
in class AbstractIndexedFile
IOStatusException
protected void readCurrent(boolean useNativeKeys) throws IOStatusException
useNativeKeys
- IOStatusException
public ACMDbDecorator retrieveDbDecorator()
public boolean isKeyUnique()
public void assignKeyIsUnique(boolean keyUnique)
keyUnique
- public java.lang.StringBuilder retrieveAdditionalSQLOrderBy()
public void assignAdditionalSQLOrderBy(java.lang.String newValue)
ISQLWrapper
public java.lang.StringBuilder retrieveAdditionalSQLCondition()
public void assignAdditionalSQLConditions(java.lang.String condition)
ISQLWrapper
public void assignSQLConditions(java.lang.String condition)
ISQLWrapper
public void assignAdditionalSQLConditions(java.lang.StringBuilder condition)
public java.util.List<java.lang.Object> retrieveAdditionalSearchParameters()
ISQLWrapper
protected java.util.List<java.lang.Object> createAndretrieveSearchParameterInstance()
public void addSearchParameter(java.lang.String theValue)
public void addSearchParameter(double theValue)
public void clearSearchParameter()
public void assignFetchSize(int newFetchSize)
protected ISMObject[] retrieveForeignKeys()
public boolean useOidTableForKeyGeneration()
public void releaseResources()
releaseResources
in class CBLBean
public void releaseResources(boolean forceRelease)
releaseResources
in interface ISMBean
releaseResources
in class CBLBean
public void assignAdditionalKeyPosition(ISMObject theField, int position)
theField
- position
- public boolean isSequentialKeyGeneration()
public void assignSequentialKeyGeneration(boolean sequentialKeyGeneration)
public java.sql.ResultSet retrieveResultSet()
public void assignResultSet(java.sql.ResultSet resultSet)
public boolean isKept()
public void setLock(boolean kept)
public boolean isFileOpened()
public void assignFileOpened(boolean fileOpened)
public int retrieveLastSeekCondition()
public void assignLastSeekCondition(int lastSeekCondition)
public boolean isSuppressNextReadCurrent()
public boolean isLastSeekConditionLookedForEquality()
public void assignLastSeekConditionLookedForEquality(boolean lastSeekConditionLookedForEquality)
public int retrieveResultSetFetchSize()
public void assignResultSetFetchSize(int resultSetFetchSize)
public void assignRowFacade(RowFacade rowFacade)
public void assignDbDecorator(ACMDbDecorator dbDecorator)
public void assignOpenMode(int openMode)
@Deprecated public void assignTableName(java.lang.String newName)
assignTableName
in interface ISQLWrapper
assignTableName
in class AbstractBasePersistence
public void assignSQLTableName(java.lang.String newName)
newName
- public java.lang.String retrieveTableName()
@Deprecated public void assignKeyValue(java.lang.String value)
value
- public void assignKeyValue(AbstractDataObject keyValueField)
ISQLWrapper
public ISMObject retrieveRecordKey()
public java.lang.String retrieveRecordKeyValue()
value
- public void assignTreatAsSQLWrapper(boolean treatAsSQLWrapper)
value
- public void reduceGEorEQ(boolean newValue)
ISQLWrapper
public boolean isReduceGEorEQ()
public void assignIgnoreOriginalKeys(boolean newValue)
public boolean isIgnoreOriginalKeys()
public boolean isAllowedToExpandGTEQSearches()
ISQLWrapper
public void assignExpandGTEQSearches(boolean expandGTEQSearches)
ISQLWrapper
public boolean isChangeGEConditonToLIKE()
ISQLWrapper
SELECT ... from TABLE WHERE KEY_1 >= 'A ' AND KEY_2 >= 'B '.
SELECT ... from TABLE WHERE KEY_1 LIKE 'A%' AND KEY_2 LIKE 'B%'This makes a significant performance improvements.
public void assignChangeGEConditonToLIKE(boolean newValue)
ISQLWrapper
SELECT ... from TABLE WHERE KEY_1 >= 'A ' AND KEY_2 >= 'B '.
SELECT ... from TABLE WHERE KEY_1 LIKE 'A%' AND KEY_2 LIKE 'B%'This makes a significant performance improvements.
public boolean isChangeGTEQ2EQForLIKECondition()
ISQLWrapper
SELECT ... from TABLE WHERE KEY_1 >= 'ABCDE' AND KEY_2 >= 'B '.
SELECT ... from TABLE WHERE KEY_1 >= 'ABCDE' AND KEY_2 LIKE 'B%'
SELECT ... from TABLE WHERE KEY_1 = 'ABCDE' AND KEY_2 LIKE 'B%'This can make a significant improvement to performance .
public void assignChangeGTEQ2EQForLIKECondition(boolean useEQForExactLenghtMatch)
ISQLWrapper
SELECT ... from TABLE WHERE KEY_1 >= 'ABCDE' AND KEY_2 >= 'B '.
SELECT ... from TABLE WHERE KEY_1 >= 'ABCDE' AND KEY_2 LIKE 'B%'
SELECT ... from TABLE WHERE KEY_1 = 'ABCDE' AND KEY_2 LIKE 'B%'This can make a significant improvement to performance .
public boolean isSeekSuppressed()
public void assignSuppressSeek(boolean newValue)
public void assignTopRowSelectStrategyCount(int count)
ISQLWrapper
SELECT … FROM table WHERE condition-1When set to greater than 1 - (for Oracle) it will produce:
SELECT ... FROM ( SELECT … FROM table WHERE condition-1 ) WHERE ROWNUM <OR_SELECT_TOP_ROW__DEFAULT;
public int retrieveTopRowSelectStrategyCount()
ISQLWrapper
SELECT … FROM table WHERE condition-1When set to greater than 1 - (for Oracle) it will produce:
SELECT ... FROM ( SELECT … FROM table WHERE condition-1 ) WHERE ROWNUM <OR_SELECT_TOP_ROW__DEFAULT;
public int retrieveTopRowSelectStrategyStartingRow()
ISQLWrapper
public void assignTopRowSelectStrategyRange(int startRowNumber, int count)
ISQLWrapper
public boolean retrieveGenerate_OrderBy_ForReadStatements()
ISQLWrapper
public void assignGenerate_OrderBy_ForReadStatements(boolean enabled)
ISQLWrapper
public void assignCachedSeekValues(java.util.List objects)
public java.util.List retrieveCachedSeekValues()
protected void trimCachedSeekValues(int numberOfFields)
public void assignGDGProperty(java.lang.String gdgProperty)
public void assignGDGCondition(java.lang.String gdgProperty)
public int validateConditionType(int conditionType)
conditionType
- public boolean retrieveThrowInvalidKeyException()
ISQLWrapper
public void assignThrowInvalidKeyException(boolean newValue)
ISQLWrapper
public void assignLowerLimitForExpandGTEQSearches(int range)
ISQLWrapper
SELECT ... FROM ... WHERE (A > ?) or (A = ? and B > ?) or (A = ? and B = ? and C >= ?))
SELECT ... FROM ... WHERE (A = ? and B = ? and C >= ?))
public int retreiveLowerLimitForExpandGTEQSearches()
public void assignUpperLimitForExpandGTEQSearches(int range)
ISQLWrapper
SELECT ... FROM ... WHERE (A > ?) or (A = ? and B > ?) or (A = ? and B = ? and C >= ?))
SELECT ... FROM ... WHERE (A > ?)
public int retreiveUpperLimitForExpandGTEQSearches()
public void assignConnection(java.sql.Connection connection)
public java.sql.Connection retrieveConnection()
public void assignFetchDirectionIsForward(java.lang.Boolean direction)
public boolean isFetchDirectionForward()
public boolean isFetchDirectionBackward()
Copyright SoftwareMining. All Rights Reserved.