public class DerbyPlatform extends DB2Platform
Purpose: Provides Derby DBMS specific behavior.
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
isConnectionDataInitialized |
protected boolean |
isSequenceSupported
Allow sequence support to be disabled for Derby < 10.6.1.
|
static int |
MAX_BLOB |
static int |
MAX_CLOB |
DEFAULT_VARCHAR_SIZEbatchWritingMechanism, castSizeForVarcharParameter, classTypes, cursorCode, DEFAULT_MAX_BATCH_WRITING_SIZE, DEFAULT_PARAMETERIZED_MAX_BATCH_WRITING_SIZE, driverName, driverSupportsNationalCharacterVarying, fieldTypes, IS_VALID_TIMEOUT, isCastRequired, maxBatchWritingSize, partitioningCallback, pingSQL, printInnerJoinInWhereClause, printOuterJoinInWhereClause, shouldBindAllParameters, shouldBindLiterals, shouldBindPartialParameters, shouldCacheAllStatements, shouldCreateIndicesOnForeignKeys, shouldForceBindAllParameters, shouldForceFieldNamesToUpperCase, shouldIgnoreCaseOnFieldComparisons, shouldOptimizeDataConversion, shouldTrimStrings, statementCacheSize, storedProcedureTerminationToken, stringBindingSize, structConverters, supportsAutoCommit, tableCreationSuffix, transactionIsolation, typeConverters, Types_NCLOB, Types_SQLXML, useJDBCStoredProcedureSyntax, useNationalCharacterVarying, useRownumFiltering, usesBatchWriting, usesByteArrayBinding, usesJDBCBatchWriting, usesNativeBatchWriting, usesNativeSQL, usesStreamsForBinding, usesStringBindingconversionManager, dataTypesConvertedFromAClass, dataTypesConvertedToAClass, defaultNativeSequenceToTable, defaultSeqenceAtNextValue, defaultSequence, endDelimiter, platformOperators, sequences, sequencesLock, startDelimiter, supportsReturnGeneratedKeys, tableQualifier, timestampQuery| Constructor and Description |
|---|
DerbyPlatform() |
| Modifier and Type | Method and Description |
|---|---|
protected ExpressionOperator |
addOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '+' to be ?
|
protected void |
appendByteArray(byte[] bytes,
java.io.Writer writer)
INTERNAL:
TODO: Need to find out how can byte arrays be inlined in Derby
|
protected ExpressionOperator |
avgOperator()
Disable binding support.
|
protected ExpressionOperator |
betweenOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of 'BETWEEN' to be ?
|
protected java.util.Hashtable |
buildFieldTypes() |
ValueReadQuery |
buildSelectQueryForIdentity()
INTERNAL:
Build the identity query for native sequencing.
|
java.io.Writer |
buildSequenceObjectDeletionWriter(java.io.Writer writer,
java.lang.String fullSeqName)
INTERNAL: Derby supports sequence objects as of 10.6.1.
|
int |
computeMaxRowsForSQL(int firstResultIndex,
int maxResults)
INTERNAL:
Use the JDBC maxResults and firstResultIndex setting to compute a value to use when
limiting the results of a query in SQL.
|
protected ExpressionOperator |
concatOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '||' to be ?
|
java.lang.Object |
convertToDatabaseType(java.lang.Object value)
Derby error the data type, length or value of arguments 'TIMESTAMP' and 'DATE' is incompatible.
|
protected ExpressionOperator |
divideOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '/' to be ?
|
protected ExpressionOperator |
equalOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '=' to be ?
|
protected ExpressionOperator |
extractOperator()
INTERNAL:
Derby does not support EXTRACT, but does have YEAR, MONTH, DAY, etc.
|
protected java.lang.String |
getCreateTempTableSqlBodyForTable(org.eclipse.persistence.internal.helper.DatabaseTable table)
INTERNAL:
|
protected java.lang.String |
getCreateTempTableSqlSuffix()
INTERNAL:
|
java.lang.String |
getInOutputProcedureToken()
This method is used to print the output parameter token when stored
procedures are called
|
java.util.Vector |
getNativeTableInfo(java.lang.String table,
java.lang.String creator,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Not currently used.
|
java.lang.String |
getProcedureBeginString()
Used for stored procedure defs.
|
java.lang.String |
getProcedureEndString()
Used for stored procedure defs.
|
java.lang.String |
getSelectForUpdateString()
INTERNAL:
Used for pessimistic locking in DB2.
|
ValueReadQuery |
getTimestampQuery()
INTERNAL:
This method returns the query to select the timestamp from the server
for Derby.
|
protected ExpressionOperator |
greaterThanEqualOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '>=' to be ?
|
protected ExpressionOperator |
greaterThanOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '>' to be ?
|
void |
initializeConnectionData(java.sql.Connection connection)
INTERNAL:
|
protected void |
initializePlatformOperators()
Initialize any platform-specific operators
|
protected ExpressionOperator |
inOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of 'IN' to be ?
|
boolean |
isAlterSequenceObjectSupported()
INTERNAL: DB2 added SEQUENCE support as of (I believe) v8.
|
boolean |
isDB2() |
boolean |
isDerby()
INTERNAL:
Answers whether platform is Derby
|
boolean |
isDynamicSQLRequiredForFunctions()
INTERNAL
Derby has some issues with using parameters on certain functions and relations.
|
protected ExpressionOperator |
lessThanEqualOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '<=' to be ?
|
protected ExpressionOperator |
lessThanOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '<' to be ?
|
protected ExpressionOperator |
ltrim2Operator()
Enable binding support.
|
protected ExpressionOperator |
modOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of 'mod' to be ?
|
protected ExpressionOperator |
multiplyOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '*' to be ?
|
protected ExpressionOperator |
notBetweenOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of 'BETWEEN' to be ?
|
protected ExpressionOperator |
notEqualOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '<>' to be ?
|
void |
printFieldIdentityClause(java.io.Writer writer)
INTERNAL:
Append the receiver's field 'identity' constraint clause to a writer.
|
void |
printSQLSelectStatement(org.eclipse.persistence.internal.databaseaccess.DatabaseCall call,
org.eclipse.persistence.internal.expressions.ExpressionSQLPrinter printer,
org.eclipse.persistence.internal.expressions.SQLSelectStatement statement)
INTERNAL:
Print the SQL representation of the statement on a stream, storing the fields
in the DatabaseCall.
|
protected ExpressionOperator |
rtrim2Operator()
Enable binding support.
|
protected void |
setNullFromDatabaseField(org.eclipse.persistence.internal.helper.DatabaseField databaseField,
java.sql.PreparedStatement statement,
int index) |
boolean |
shouldIgnoreException(java.sql.SQLException exception)
Allow for the platform to ignore exceptions.
|
boolean |
shouldPrintOutputTokenAtStart()
This is required in the construction of the stored procedures with
output parameters
|
protected boolean |
shouldTempTableSpecifyPrimaryKeys()
INTERNAL:
Indicates whether temporary table can specify primary keys (some platforms don't allow that).
|
protected ExpressionOperator |
subtractOperator()
Derby requires that at least one argument be a known type
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '-' to be ?
|
protected ExpressionOperator |
sumOperator()
Disable binding support.
|
boolean |
supportsSequenceObjects()
INTERNAL: Derby supports sequence objects as of 10.6.1.
|
protected ExpressionOperator |
trim2()
Enable binding support.
|
void |
writeUpdateOriginalFromTempTableSql(java.io.Writer writer,
org.eclipse.persistence.internal.helper.DatabaseTable table,
java.util.Collection pkFields,
java.util.Collection assignedFields)
INTERNAL:
May need to override this method if the platform supports temporary tables
and the generated sql doesn't work.
|
allowBindingForSelectClause, appendCalendar, appendDate, appendDB2Calendar, appendDB2Date, appendDB2Timestamp, appendTime, appendTimestamp, ascendingOperator, buildSelectQueryForSequenceObject, caseConditionOperator, caseOperator, coalesceOperator, count, descendingOperator, disableAllBindingExpression, disableAtLeast1BindingExpression, distinct, dontBindUpdateAllQueryUsingTempTables, getCreateTempTableSqlPrefix, getMaxFieldNameSize, getMaxForeignKeyNameSize, getMaxUniqueKeyNameSize, getNoWaitString, getProcedureArgument, getProcedureAsString, getProcedureCallHeader, getTempTableForTable, isNullAllowedInSelectClause, lengthOperator, max, maximumNumericValues, min, minimumNumericValues, nullifOperator, printFieldTypeSize, shouldBindPartialParameters, shouldPrintForUpdateClause, shouldUseJDBCOuterJoinSyntax, supportsGlobalTempTables, supportsIdentity, supportsLockingQueriesWithMultipleTables, supportsOrderByParameters, writeParameterMarkeraddBatch, addStructConverter, allowsSizeInProcedureArguments, appendBoolean, appendLiteralToCall, appendLiteralToCallWithBinding, appendNumber, appendParameter, appendParameterInternal, appendString, autoCommit, beginTransaction, buildBatchCriteria, buildBatchCriteriaForComplexId, buildCallWithReturning, buildClassTypes, buildCreateIndex, buildCreateIndex, buildDropIndex, buildDropIndex, buildProcedureCallString, buildSequenceObjectAlterIncrementWriter, buildSequenceObjectCreationWriter, canBatchWriteWithOptimisticLocking, canBuildCallWithReturning, checkTableExists, commitTransaction, copyInto, createArray, createArray, createPlatformDefaultSequence, createStruct, createStruct, createStruct, executeBatch, executeStoredProcedure, freeTemporaryObject, getAssignmentString, getBatchBeginString, getBatchDelimiterString, getBatchEndString, getBatchRowCountAssignString, getBatchRowCountDeclareString, getBatchRowCountReturnString, getBatchWritingMechanism, getCastSizeForVarcharParameter, getClassTypes, getConnection, getConnectionUserName, getConstraintDeletionString, getCreateDatabaseSchemaString, getCreateViewString, getCreationInOutputProcedureToken, getCreationOutputProcedureToken, getCursorCode, getCustomModifyValueForCall, getDefaultSequenceTableName, getDriverSupportsNVarChar, getDropCascadeString, getDropDatabaseSchemaString, getFieldTypeDefinition, getFieldTypes, getFunctionCallHeader, getIdentifierQuoteCharacter, getIndexNamePrefix, getInputProcedureToken, getJDBCOuterJoinString, getJDBCType, getJDBCType, getJDBCTypeForSetNull, getJdbcTypeName, getMaxBatchWritingSize, getMaxIndexNameSize, getObjectFromResultSet, getOutputProcedureToken, getParameterValueFromDatabaseCall, getParameterValueFromDatabaseCall, getPartitioningCallback, getPingSQL, getProcedureArgument, getProcedureArgumentString, getProcedureCallTail, getProcedureOptionList, getQualifiedName, getQualifiedSequenceTableName, getRefValue, getRefValue, getSelectForUpdateNoWaitString, getSelectForUpdateOfString, getSelectForUpdateWaitString, getSequenceCounterFieldName, getSequenceNameFieldName, getSequencePreallocationSize, getSequenceTableName, getStatementCacheSize, getStoredProcedureParameterPrefix, getStoredProcedureTerminationToken, getStringBindingSize, getStructConverters, getTableCreationSuffix, getTableExistsQuery, getTransactionIsolation, getTypeConverters, getUniqueConstraintDeletionString, getUseNationalCharacterVaryingTypeForString, getVPDClearIdentifierQuery, getVPDCreationFunctionString, getVPDCreationPolicyString, getVPDDeletionString, getVPDSetIdentifierQuery, hasPartitioningCallback, initialize, isCastRequired, isForUpdateCompatibleWithDistinct, isInformixOuterJoin, isJDBCExecuteCompliant, isLobCompatibleWithDistinct, isLockTimeoutException, isOutputAllowWithResultSet, isRowCountOutputParameterRequired, isXDBDocument, minimumTimeIncrement, prepareBatchStatement, printFieldNotNullClause, printFieldNullClause, printFieldTypeSize, printFieldUnique, printFieldUnique, printStoredFunctionReturnKeyWord, printValuelist, printValuelist, registerOutputParameter, registerOutputParameter, registerOutputParameter, registerOutputParameter, requiresNamedPrimaryKeyConstraints, requiresProcedureBrackets, requiresProcedureCallBrackets, requiresProcedureCallOuputToken, requiresTableInIndexDropDDL, requiresTypeNameToRegisterOutputParameter, requiresUniqueConstraintCreationOnTableCreate, retrieveFirstPrimaryKeyOrOne, rollbackTransaction, setBatchWritingMechanism, setCastSizeForVarcharParameter, setClassTypes, setCursorCode, setDriverName, setDriverSupportsNVarChar, setFieldTypes, setIsCastRequired, setMaxBatchWritingSize, setNullFromDatabaseField, setParameterValueInDatabaseCall, setParameterValueInDatabaseCall, setPartitioningCallback, setPingSQL, setPrintInnerJoinInWhereClause, setPrintOuterJoinInWhereClause, setSequenceCounterFieldName, setSequenceNameFieldName, setSequenceTableName, setShouldBindAllParameters, setShouldBindLiterals, setShouldBindPartialParameters, setShouldCacheAllStatements, setShouldCreateIndicesOnForeignKeys, setShouldForceBindAllParameters, setShouldForceFieldNamesToUpperCase, setShouldIgnoreCaseOnFieldComparisons, setShouldOptimizeDataConversion, setShouldTrimStrings, setShouldUseRownumFiltering, setStatementCacheSize, setStoredProcedureTerminationToken, setStringBindingSize, setSupportsAutoCommit, setTableCreationSuffix, setTransactionIsolation, setUseJDBCStoredProcedureSyntax, setUseNationalCharacterVaryingTypeForString, setUsesBatchWriting, setUsesByteArrayBinding, setUsesJDBCBatchWriting, setUsesNativeBatchWriting, setUsesNativeSQL, setUsesStreamsForBinding, setUsesStringBinding, shouldAlwaysUseTempStorageForModifyAll, shouldBindAllParameters, shouldBindLiterals, shouldCacheAllStatements, shouldCreateIndicesForPrimaryKeys, shouldCreateIndicesOnForeignKeys, shouldCreateIndicesOnUniqueKeys, shouldForceBindAllParameters, shouldForceFieldNamesToUpperCase, shouldIgnoreCaseOnFieldComparisons, shouldOptimizeDataConversion, shouldPrintAliasForUpdate, shouldPrintConstraintNameAfter, shouldPrintFieldIdentityClause, shouldPrintInnerJoinInWhereClause, shouldPrintInOutputTokenBeforeType, shouldPrintInputTokenAtStart, shouldPrintLockingClauseAfterWhereClause, shouldPrintOuterJoinInWhereClause, shouldPrintOutputTokenBeforeType, shouldPrintStoredProcedureArgumentNameInCall, shouldPrintStoredProcedureVariablesAfterBeginString, shouldTrimStrings, shouldUseCustomModifyForCall, shouldUseGetSetNString, shouldUseRownumFiltering, supportsANSIInnerJoinSyntax, supportsAutoCommit, supportsAutoConversionToNumericForArithmeticOperations, supportsConnectionUserName, supportsCountDistinctWithMultipleFields, supportsDeleteOnCascade, supportsForeignKeyConstraints, supportsIndexes, supportsIndividualTableLocking, supportsLocalTempTables, supportsNestingOuterJoins, supportsOuterJoinsWithBrackets, supportsPrimaryKeyConstraint, supportsStoredFunctions, supportsTempTables, supportsUniqueColumns, supportsUniqueKeyConstraints, supportsVPD, supportsWaitForUpdate, usesBatchWriting, usesByteArrayBinding, usesJDBCBatchWriting, usesNativeBatchWriting, usesNativeSQL, usesSequenceTable, usesStreamsForBinding, usesStringBinding, wasFailureCommunicationBased, writeAddColumnClause, writeAutoAssignmentSetClause, writeAutoJoinWhereClause, writeCleanUpTempTableSql, writeCreateTempTableSql, writeDeleteFromTargetTableUsingTempTableSql, writeFields, writeFieldsAutoClause, writeFieldsList, writeInsertIntoTableSql, writeJoinWhereClause, writeLOB, writeTableCreationSuffixaddOperator, addSequence, addSequence, buildNativeCall, buildSelectQueryForIdentity, buildSelectQueryForSequenceObject, clone, convertObject, createConnectionCustomizer, createExpressionFor, getConversionManager, getDataTypesConvertedFrom, getDataTypesConvertedTo, getDefaultNativeSequenceToTable, getDefaultSeqenceAtNextValue, getDefaultSequence, getDefaultSequenceToWrite, getEndDelimiter, getINClauseLimit, getOperator, getPlatformOperators, getSelectSequenceQuery, getSequence, getSequences, getSequencesToWrite, getStartDelimiter, getTableQualifier, getTimestampFromServer, getUpdateSequenceQuery, hasDefaultSequence, initializeDefaultQueries, isAccess, isAttunity, isCloudscape, isDB2Z, isDBase, isFirebird, isH2, isHANA, isHSQL, isInformix, isMaxDB, isMySQL, isODBC, isOracle, isOracle9, isPervasive, isPointBase, isPostgreSQL, isSQLAnywhere, isSQLServer, isSybase, isSymfoware, isTimesTen, isTimesTen7, removeAllSequences, removeSequence, sequencesAfterCloneCleanup, setConversionManager, setDefaultNativeSequenceToTable, setDefaultSeqenceAtNextValue, setDefaultSequence, setEndDelimiter, setSelectSequenceNumberQuery, setSequencePreallocationSize, setSequences, setStartDelimiter, setSupportsReturnGeneratedKeys, setTableQualifier, setTimestampQuery, setUpdateSequenceQuery, shouldNativeSequenceUseTransaction, shouldPrepare, shouldSelectDistinctIncludeOrderBy, shouldSelectIncludeOrderBy, supportsNativeSequenceNumbers, supportsReturnGeneratedKeys, toString, usesPlatformDefaultSequencepublic static final int MAX_CLOB
public static final int MAX_BLOB
protected boolean isSequenceSupported
protected boolean isConnectionDataInitialized
protected void appendByteArray(byte[] bytes,
java.io.Writer writer)
throws java.io.IOException
appendByteArray in class DB2Platformjava.io.IOExceptionpublic java.lang.Object convertToDatabaseType(java.lang.Object value)
convertToDatabaseType in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformpublic ValueReadQuery getTimestampQuery()
getTimestampQuery in interface org.eclipse.persistence.internal.databaseaccess.PlatformgetTimestampQuery in class DB2Platformpublic java.util.Vector getNativeTableInfo(java.lang.String table,
java.lang.String creator,
org.eclipse.persistence.internal.sessions.AbstractSession session)
getNativeTableInfo in class DB2Platformpublic java.lang.String getProcedureEndString()
getProcedureEndString in class DB2Platformpublic java.lang.String getProcedureBeginString()
getProcedureBeginString in class DB2Platformpublic java.lang.String getInOutputProcedureToken()
getInOutputProcedureToken in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformpublic boolean shouldPrintOutputTokenAtStart()
shouldPrintOutputTokenAtStart in class DB2Platformpublic boolean isDerby()
isDerby in interface org.eclipse.persistence.internal.databaseaccess.PlatformisDerby in class org.eclipse.persistence.internal.databaseaccess.DatasourcePlatformpublic boolean isDB2()
isDB2 in interface org.eclipse.persistence.internal.databaseaccess.PlatformisDB2 in class DB2Platformpublic java.lang.String getSelectForUpdateString()
DB2PlatformgetSelectForUpdateString in class DB2Platformpublic boolean shouldIgnoreException(java.sql.SQLException exception)
shouldIgnoreException in class DB2Platformprotected java.lang.String getCreateTempTableSqlSuffix()
getCreateTempTableSqlSuffix in class DB2Platformpublic ValueReadQuery buildSelectQueryForIdentity()
buildSelectQueryForIdentity in class DB2Platformprotected boolean shouldTempTableSpecifyPrimaryKeys()
shouldTempTableSpecifyPrimaryKeys in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformprotected java.lang.String getCreateTempTableSqlBodyForTable(org.eclipse.persistence.internal.helper.DatabaseTable table)
getCreateTempTableSqlBodyForTable in class DB2Platformpublic void writeUpdateOriginalFromTempTableSql(java.io.Writer writer,
org.eclipse.persistence.internal.helper.DatabaseTable table,
java.util.Collection pkFields,
java.util.Collection assignedFields)
throws java.io.IOException
writeUpdateOriginalFromTempTableSql in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformwriter - for writing the sqltable - is original table for which temp table is created.pkFields - - primary key fields for the original table.assignedFields - - fields to be assigned a new value.java.io.IOExceptionpublic void printFieldIdentityClause(java.io.Writer writer)
throws ValidationException
printFieldIdentityClause in class DB2PlatformValidationExceptionprotected java.util.Hashtable buildFieldTypes()
buildFieldTypes in class DB2Platformprotected void setNullFromDatabaseField(org.eclipse.persistence.internal.helper.DatabaseField databaseField,
java.sql.PreparedStatement statement,
int index)
throws java.sql.SQLException
setNullFromDatabaseField in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformjava.sql.SQLExceptionprotected void initializePlatformOperators()
initializePlatformOperators in class DB2Platformprotected ExpressionOperator avgOperator()
With binding enabled, Derby will throw an error:
ERROR 42X36: The 'AVG' operator is not allowed to take a ? parameter as an operand.
protected ExpressionOperator sumOperator()
With binding enabled, Derby will throw an error:
ERROR 42X36: The 'SUM' operator is not allowed to take a ? parameter as an operand.
protected ExpressionOperator equalOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '=' to be ? parameters.
protected ExpressionOperator notEqualOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '<>' to be ? parameters.
protected ExpressionOperator greaterThanOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '>' to be ? parameters.
protected ExpressionOperator greaterThanEqualOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '>=' to be ? parameters.
protected ExpressionOperator lessThanOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '<' to be ? parameters.
protected ExpressionOperator lessThanEqualOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '<=' to be ? parameters.
protected ExpressionOperator extractOperator()
protected ExpressionOperator addOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '+' to be ? parameters.
protected ExpressionOperator subtractOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '-' to be ? parameters.
protected ExpressionOperator multiplyOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '*' to be ? parameters.
protected ExpressionOperator divideOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '/' to be ? parameters.
protected ExpressionOperator concatOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of '||' to be ? parameters.
concatOperator in class DB2Platformprotected ExpressionOperator trim2()
With binding enabled, Derby does not throw an exception
trim2 in class DB2Platformprotected ExpressionOperator modOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of 'mod' to be ? parameters.
protected ExpressionOperator ltrim2Operator()
With binding enabled, Derby does not throw an exception
ltrim2Operator in class DB2Platformprotected ExpressionOperator rtrim2Operator()
With binding enabled, Derby does not throw an exception
rtrim2Operator in class DB2Platformprotected ExpressionOperator betweenOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of 'BETWEEN' to be ? parameters.
protected ExpressionOperator notBetweenOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of 'BETWEEN' to be ? parameters.
protected ExpressionOperator inOperator()
With binding enabled, Derby will throw an error:
ERROR 42X35: It is not allowed for both operands of 'IN' to be ? parameters.
public boolean isDynamicSQLRequiredForFunctions()
isDynamicSQLRequiredForFunctions in class DB2Platformpublic int computeMaxRowsForSQL(int firstResultIndex,
int maxResults)
computeMaxRowsForSQL in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformpublic void printSQLSelectStatement(org.eclipse.persistence.internal.databaseaccess.DatabaseCall call,
org.eclipse.persistence.internal.expressions.ExpressionSQLPrinter printer,
org.eclipse.persistence.internal.expressions.SQLSelectStatement statement)
printSQLSelectStatement in class DB2Platformpublic boolean supportsSequenceObjects()
supportsSequenceObjects in class DB2Platformpublic boolean isAlterSequenceObjectSupported()
DB2PlatformisAlterSequenceObjectSupported in class DB2Platformpublic java.io.Writer buildSequenceObjectDeletionWriter(java.io.Writer writer,
java.lang.String fullSeqName)
throws java.io.IOException
buildSequenceObjectDeletionWriter in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformjava.io.IOExceptionpublic void initializeConnectionData(java.sql.Connection connection)
throws java.sql.SQLException
initializeConnectionData in class DB2Platformjava.sql.SQLException