Class DB2ZPlatform
- java.lang.Object
-
- org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform
-
- org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
-
- org.eclipse.persistence.platform.database.DatabasePlatform
-
- org.eclipse.persistence.platform.database.DB2Platform
-
- org.eclipse.persistence.platform.database.DB2ZPlatform
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,org.eclipse.persistence.internal.core.databaseaccess.CorePlatform<org.eclipse.persistence.internal.helper.ConversionManager>
,org.eclipse.persistence.internal.databaseaccess.Platform
public class DB2ZPlatform extends DB2Platform
Purpose: Provides DB2 z/OS specific behavior.This provides for some additional compatibility in certain DB2 versions.
Responsibilities:
- Support creating tables that handle multibyte characters
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.platform.database.DatabasePlatform
DEFAULT_VARCHAR_SIZE
-
Fields inherited from class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
batchWritingMechanism, 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, usesStringBinding
-
Fields inherited from class org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform
conversionManager, dataTypesConvertedFromAClass, dataTypesConvertedToAClass, defaultNativeSequenceToTable, defaultSeqenceAtNextValue, defaultSequence, endDelimiter, platformOperators, sequences, sequencesLock, startDelimiter, supportsReturnGeneratedKeys, tableQualifier, timestampQuery
-
-
Constructor Summary
Constructors Constructor Description DB2ZPlatform()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ExpressionOperator
absOperator()
Disable binding support.protected ExpressionOperator
avgOperator()
Disable binding support.protected ExpressionOperator
betweenOperator()
DB2 z/OS requires that at least one argument be a known typeprotected java.util.Hashtable
buildFieldTypes()
java.lang.String
buildProcedureCallString(StoredProcedureCall call, org.eclipse.persistence.internal.sessions.AbstractSession session, org.eclipse.persistence.internal.sessions.AbstractRecord row)
INTERNAL: Used for sp calls.protected ExpressionOperator
concatOperator()
DB2 z/OS requires that at least one argument be a known typeprotected ExpressionOperator
equalOperator()
DB2 z/OS requires that at least one argument be a known typejava.lang.Object
getParameterValueFromDatabaseCall(java.sql.CallableStatement statement, java.lang.String name, org.eclipse.persistence.internal.sessions.AbstractSession session)
java.lang.String
getProcedureArgument(java.lang.String name, java.lang.Object parameter, org.eclipse.persistence.internal.databaseaccess.DatasourceCall.ParameterType parameterType, StoredProcedureCall call, org.eclipse.persistence.internal.sessions.AbstractSession session)
Obtain the platform specific argument stringjava.lang.String
getProcedureOptionList()
DB2 on Z uses ":" as prefix for procedure arguments.java.lang.String
getTableCreationSuffix()
ValueReadQuery
getTimestampQuery()
INTERNAL: This method returns the query to select the timestamp from the server for DB2.protected ExpressionOperator
greaterThanEqualOperator()
DB2 z/OS requires that at least one argument be a known typeprotected ExpressionOperator
greaterThanOperator()
DB2 z/OS requires that at least one argument be a known typeprotected void
initializePlatformOperators()
INTERNAL: Initialize any platform-specific operatorsprotected ExpressionOperator
inOperator()
DB2 z/OS requires that at least one argument be a known typeboolean
isDB2Z()
protected ExpressionOperator
isNotNullOperator()
Disable binding support.protected ExpressionOperator
isNullOperator()
Disable binding support.protected ExpressionOperator
lessThanEqualOperator()
DB2 z/OS requires that at least one argument be a known typeprotected ExpressionOperator
lessThanOperator()
DB2 z/OS requires that at least one argument be a known typeprotected ExpressionOperator
likeEscapeOperator()
DB2 z/OS support for binding the LIKE ESCAPE character depends on database configuration (mixed vs DBCS).protected ExpressionOperator
locate2Operator()
Disable binding support.protected ExpressionOperator
locateOperator()
Disable binding support.protected ExpressionOperator
ltrim2Operator()
Disable binding support.protected ExpressionOperator
ltrimOperator()
Disable binding support.protected ExpressionOperator
modOperator()
Disable binding support.protected ExpressionOperator
notBetweenOperator()
DB2 z/OS requires that at least one argument be a known typeprotected ExpressionOperator
notEqualOperator()
DB2 z/OS requires that at least one argument be a known typeprotected ExpressionOperator
notLikeEscapeOperator()
DB2 z/OS support for binding the LIKE ESCAPE character depends on database configuration (mixed vs DBCS).void
registerOutputParameter(java.sql.CallableStatement statement, java.lang.String name, int jdbcType)
This method is used to register output parameter on Callable Statements for Stored Procedures as each database seems to have a different method.void
registerOutputParameter(java.sql.CallableStatement statement, java.lang.String name, int jdbcType, java.lang.String typeName)
This method is used to register output parameter on Callable Statements for Stored Procedures as each database seems to have a different method.protected ExpressionOperator
rtrim2Operator()
Disable binding support.protected ExpressionOperator
rtrimOperator()
Disable binding support.protected void
setNullFromDatabaseField(org.eclipse.persistence.internal.helper.DatabaseField databaseField, java.sql.CallableStatement statement, java.lang.String name)
void
setParameterValueInDatabaseCall(java.lang.Object parameter, java.sql.CallableStatement statement, java.lang.String name, org.eclipse.persistence.internal.sessions.AbstractSession session)
protected ExpressionOperator
sqrtOperator()
Disable binding support.protected ExpressionOperator
sumOperator()
Disable binding support.protected ExpressionOperator
trim2()
Disable binding support.protected ExpressionOperator
trimOperator()
Disable binding support.-
Methods inherited from class org.eclipse.persistence.platform.database.DB2Platform
allowBindingForSelectClause, appendByteArray, appendCalendar, appendDate, appendDB2Calendar, appendDB2Date, appendDB2Timestamp, appendTime, appendTimestamp, ascendingOperator, buildSelectQueryForIdentity, buildSelectQueryForSequenceObject, caseConditionOperator, caseOperator, coalesceOperator, count, descendingOperator, disableAllBindingExpression, disableAtLeast1BindingExpression, distinct, dontBindUpdateAllQueryUsingTempTables, getCreateTempTableSqlBodyForTable, getCreateTempTableSqlPrefix, getCreateTempTableSqlSuffix, getMaxFieldNameSize, getMaxForeignKeyNameSize, getMaxUniqueKeyNameSize, getNativeTableInfo, getNoWaitString, getProcedureAsString, getProcedureBeginString, getProcedureCallHeader, getProcedureEndString, getSelectForUpdateString, getTempTableForTable, initializeConnectionData, isAlterSequenceObjectSupported, isDB2, isDynamicSQLRequiredForFunctions, isNullAllowedInSelectClause, lengthOperator, max, maximumNumericValues, min, minimumNumericValues, nullifOperator, printFieldIdentityClause, printFieldTypeSize, printSQLSelectStatement, shouldBindPartialParameters, shouldIgnoreException, shouldPrintForUpdateClause, shouldPrintOutputTokenAtStart, shouldUseJDBCOuterJoinSyntax, supportsGlobalTempTables, supportsIdentity, supportsLockingQueriesWithMultipleTables, supportsOrderByParameters, supportsSequenceObjects, writeParameterMarker
-
Methods inherited from class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
addBatch, addStructConverter, allowsSizeInProcedureArguments, appendBoolean, appendLiteralToCall, appendLiteralToCallWithBinding, appendNumber, appendParameter, appendParameterInternal, appendString, autoCommit, beginTransaction, buildBatchCriteria, buildBatchCriteriaForComplexId, buildCallWithReturning, buildClassTypes, buildCreateIndex, buildCreateIndex, buildDropIndex, buildDropIndex, buildSequenceObjectAlterIncrementWriter, buildSequenceObjectCreationWriter, buildSequenceObjectDeletionWriter, canBatchWriteWithOptimisticLocking, canBuildCallWithReturning, checkTableExists, commitTransaction, computeMaxRowsForSQL, convertToDatabaseType, 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, getInOutputProcedureToken, getInputProcedureToken, getJDBCOuterJoinString, getJDBCType, getJDBCType, getJDBCTypeForSetNull, getJdbcTypeName, getMaxBatchWritingSize, getMaxIndexNameSize, getObjectFromResultSet, getOutputProcedureToken, getParameterValueFromDatabaseCall, getPartitioningCallback, getPingSQL, getProcedureArgument, getProcedureArgumentString, getProcedureCallTail, getQualifiedName, getQualifiedSequenceTableName, getRefValue, getRefValue, getSelectForUpdateNoWaitString, getSelectForUpdateOfString, getSelectForUpdateWaitString, getSequenceCounterFieldName, getSequenceNameFieldName, getSequencePreallocationSize, getSequenceTableName, getStatementCacheSize, getStoredProcedureParameterPrefix, getStoredProcedureTerminationToken, getStringBindingSize, getStructConverters, 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, requiresNamedPrimaryKeyConstraints, requiresProcedureBrackets, requiresProcedureCallBrackets, requiresProcedureCallOuputToken, requiresTableInIndexDropDDL, requiresTypeNameToRegisterOutputParameter, requiresUniqueConstraintCreationOnTableCreate, retrieveFirstPrimaryKeyOrOne, rollbackTransaction, setBatchWritingMechanism, setCastSizeForVarcharParameter, setClassTypes, setCursorCode, setDriverName, setDriverSupportsNVarChar, setFieldTypes, setIsCastRequired, setMaxBatchWritingSize, setNullFromDatabaseField, 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, shouldTempTableSpecifyPrimaryKeys, 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, writeTableCreationSuffix, writeUpdateOriginalFromTempTableSql
-
Methods inherited from class org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform
addOperator, addSequence, addSequence, buildNativeCall, buildSelectQueryForIdentity, buildSelectQueryForSequenceObject, clone, convertObject, convertObject, createConnectionCustomizer, createExpressionFor, getConversionManager, getDataTypesConvertedFrom, getDataTypesConvertedTo, getDefaultNativeSequenceToTable, getDefaultSeqenceAtNextValue, getDefaultSequence, getDefaultSequenceToWrite, getDriverVersion, getEndDelimiter, getINClauseLimit, getOperator, getPlatformOperators, getSelectSequenceQuery, getSequence, getSequences, getSequencesToWrite, getStartDelimiter, getTableQualifier, getTimestampFromServer, getUpdateSequenceQuery, hasDefaultSequence, initializeDefaultQueries, isAccess, isAttunity, isCloudscape, isDBase, isDerby, isFirebird, isH2, isHANA, isHSQL, isInformix, isMaxDB, isMySQL, isODBC, isOracle, isOracle23, 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, usesPlatformDefaultSequence
-
-
-
-
Method Detail
-
buildFieldTypes
protected java.util.Hashtable buildFieldTypes()
- Overrides:
buildFieldTypes
in classDB2Platform
-
getTableCreationSuffix
public java.lang.String getTableCreationSuffix()
- Overrides:
getTableCreationSuffix
in classorg.eclipse.persistence.internal.databaseaccess.DatabasePlatform
-
getProcedureArgument
public java.lang.String getProcedureArgument(java.lang.String name, java.lang.Object parameter, org.eclipse.persistence.internal.databaseaccess.DatasourceCall.ParameterType parameterType, StoredProcedureCall call, org.eclipse.persistence.internal.sessions.AbstractSession session)
Description copied from class:DB2Platform
Obtain the platform specific argument string- Overrides:
getProcedureArgument
in classDB2Platform
-
getProcedureOptionList
public java.lang.String getProcedureOptionList()
DB2 on Z uses ":" as prefix for procedure arguments.- Overrides:
getProcedureOptionList
in classorg.eclipse.persistence.internal.databaseaccess.DatabasePlatform
-
getTimestampQuery
public ValueReadQuery getTimestampQuery()
INTERNAL: This method returns the query to select the timestamp from the server for DB2.- Specified by:
getTimestampQuery
in interfaceorg.eclipse.persistence.internal.databaseaccess.Platform
- Overrides:
getTimestampQuery
in classDB2Platform
-
isDB2Z
public boolean isDB2Z()
- Specified by:
isDB2Z
in interfaceorg.eclipse.persistence.internal.databaseaccess.Platform
- Overrides:
isDB2Z
in classorg.eclipse.persistence.internal.databaseaccess.DatasourcePlatform
-
initializePlatformOperators
protected void initializePlatformOperators()
INTERNAL: Initialize any platform-specific operators- Overrides:
initializePlatformOperators
in classDB2Platform
-
avgOperator
protected ExpressionOperator avgOperator()
Disable binding support.With binding enabled, DB2 z/OS will throw an error:
The statement cannot be executed because a parameter marker has been used in an invalid way. DB2 SQL Error: SQLCODE=-418, SQLSTATE=42610
-
sumOperator
protected ExpressionOperator sumOperator()
Disable binding support.With binding enabled, DB2 z/OS will throw an error:
The statement cannot be executed because a parameter marker has been used in an invalid way. DB2 SQL Error: SQLCODE=-418, SQLSTATE=42610
-
absOperator
protected ExpressionOperator absOperator()
Disable binding support.With binding enabled, DB2 z/OS will throw an error:
The statement cannot be executed because a parameter marker has been used in an invalid way. DB2 SQL Error: SQLCODE=-418, SQLSTATE=42610
-
concatOperator
protected ExpressionOperator concatOperator()
DB2 z/OS requires that at least one argument be a known typeWith binding enabled, DB2 z/OS will throw an error:
The statement cannot be executed because a parameter marker has been used in an invalid way. DB2 SQL Error: SQLCODE=-418, SQLSTATE=42610
- Overrides:
concatOperator
in classDB2Platform
-
equalOperator
protected ExpressionOperator equalOperator()
DB2 z/OS requires that at least one argument be a known typeWith binding enabled, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
notEqualOperator
protected ExpressionOperator notEqualOperator()
DB2 z/OS requires that at least one argument be a known typeWith binding enabled, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
greaterThanOperator
protected ExpressionOperator greaterThanOperator()
DB2 z/OS requires that at least one argument be a known typeWith binding enabled, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
greaterThanEqualOperator
protected ExpressionOperator greaterThanEqualOperator()
DB2 z/OS requires that at least one argument be a known typeWith binding enabled, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
lessThanOperator
protected ExpressionOperator lessThanOperator()
DB2 z/OS requires that at least one argument be a known typeFor ALL, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
lessThanEqualOperator
protected ExpressionOperator lessThanEqualOperator()
DB2 z/OS requires that at least one argument be a known typeWith binding enabled, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
isNullOperator
protected ExpressionOperator isNullOperator()
Disable binding support.With binding enabled, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
isNotNullOperator
protected ExpressionOperator isNotNullOperator()
Disable binding support.With binding enabled, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
betweenOperator
protected ExpressionOperator betweenOperator()
DB2 z/OS requires that at least one argument be a known typeWith binding enabled, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
notBetweenOperator
protected ExpressionOperator notBetweenOperator()
DB2 z/OS requires that at least one argument be a known typeWith binding enabled, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
likeEscapeOperator
protected ExpressionOperator likeEscapeOperator()
DB2 z/OS support for binding the LIKE ESCAPE character depends on database configuration (mixed vs DBCS). Since we cannot know how the database in configured, we will disable parameter binding for the ESCAPEWith binding enabled, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
notLikeEscapeOperator
protected ExpressionOperator notLikeEscapeOperator()
DB2 z/OS support for binding the LIKE ESCAPE character depends on database configuration (mixed vs DBCS). Since we cannot know how the database in configured, we will disable parameter binding for the ESCAPEWith binding enabled, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
locateOperator
protected ExpressionOperator locateOperator()
Disable binding support.With all binding enabled, DB2 z/OS will throw an error:
The statement cannot be executed because a parameter marker has been used in an invalid way. DB2 SQL Error: SQLCODE=-418, SQLSTATE=42610
With some binding enabled, DB2 z/OS will throw an error:
The data type, the length, or the value of an argument of a scalar function is incorrect. DB2 SQL Error: SQLCODE=-171, SQLSTATE=42815
-
locate2Operator
protected ExpressionOperator locate2Operator()
Disable binding support.With all binding enabled, DB2 z/OS will throw an error:
The statement cannot be executed because a parameter marker has been used in an invalid way. DB2 SQL Error: SQLCODE=-418, SQLSTATE=42610
With some binding enabled, DB2 z/OS will throw an error:
The data type, the length, or the value of an argument of a scalar function is incorrect. DB2 SQL Error: SQLCODE=-171, SQLSTATE=42815
-
modOperator
protected ExpressionOperator modOperator()
Disable binding support.With all binding enabled, DB2 z/OS will throw an error:
The statement cannot be executed because a parameter marker has been used in an invalid way. DB2 SQL Error: SQLCODE=-418, SQLSTATE=42610
With some binding enabled, DB2 z/OS will throw an error:
The data type, the length, or the value of an argument of a scalar function is incorrect. DB2 SQL Error: SQLCODE=-171, SQLSTATE=42815
-
sqrtOperator
protected ExpressionOperator sqrtOperator()
Disable binding support.With binding enabled, DB2 z/OS will throw an error:
The statement cannot be executed because a parameter marker has been used in an invalid way. DB2 SQL Error: SQLCODE=-418, SQLSTATE=42610
-
trimOperator
protected ExpressionOperator trimOperator()
Disable binding support.With binding enabled, DB2 z/OS will throw an error:
The statement cannot be executed because a parameter marker has been used in an invalid way. DB2 SQL Error: SQLCODE=-418, SQLSTATE=42610
-
trim2
protected ExpressionOperator trim2()
Disable binding support.With binding enabled, DB2 z/OS will throw an error:
The data type, the length, or the value of an argument of a scalar function is incorrect. DB2 SQL Error: SQLCODE=-171, SQLSTATE=42815
- Overrides:
trim2
in classDB2Platform
-
ltrimOperator
protected ExpressionOperator ltrimOperator()
Disable binding support.With binding enabled, DB2 z/OS will throw an error:
The statement cannot be executed because a parameter marker has been used in an invalid way. DB2 SQL Error: SQLCODE=-418, SQLSTATE=42610
-
ltrim2Operator
protected ExpressionOperator ltrim2Operator()
Disable binding support.With binding enabled, DB2 z/OS will throw an error:
The data type, the length, or the value of an argument of a scalar function is incorrect. DB2 SQL Error: SQLCODE=-171, SQLSTATE=42815
- Overrides:
ltrim2Operator
in classDB2Platform
-
rtrimOperator
protected ExpressionOperator rtrimOperator()
Disable binding support.With binding enabled, DB2 z/OS will throw an error:
The statement cannot be executed because a parameter marker has been used in an invalid way. DB2 SQL Error: SQLCODE=-418, SQLSTATE=42610
-
rtrim2Operator
protected ExpressionOperator rtrim2Operator()
Disable binding support.With binding enabled, DB2 z/OS will throw an error:
The data type, the length, or the value of an argument of a scalar function is incorrect. DB2 SQL Error: SQLCODE=-171, SQLSTATE=42815
- Overrides:
rtrim2Operator
in classDB2Platform
-
inOperator
protected ExpressionOperator inOperator()
DB2 z/OS requires that at least one argument be a known typeWith binding enabled, DB2 z/OS will throw an error:
The statement string specified as the object of a PREPARE contains a predicate or expression where parameter markers have been used as operands of the same operator for example: ? > ?. DB2 SQL Error: SQLCODE=-417, SQLSTATE=42609
-
buildProcedureCallString
public java.lang.String buildProcedureCallString(StoredProcedureCall call, org.eclipse.persistence.internal.sessions.AbstractSession session, org.eclipse.persistence.internal.sessions.AbstractRecord row)
INTERNAL: Used for sp calls. PostGreSQL uses a different method for executing StoredProcedures than other platforms.- Overrides:
buildProcedureCallString
in classorg.eclipse.persistence.internal.databaseaccess.DatabasePlatform
-
registerOutputParameter
public void registerOutputParameter(java.sql.CallableStatement statement, java.lang.String name, int jdbcType) throws java.sql.SQLException
This method is used to register output parameter on Callable Statements for Stored Procedures as each database seems to have a different method.- Overrides:
registerOutputParameter
in classorg.eclipse.persistence.internal.databaseaccess.DatabasePlatform
- Throws:
java.sql.SQLException
-
registerOutputParameter
public void registerOutputParameter(java.sql.CallableStatement statement, java.lang.String name, int jdbcType, java.lang.String typeName) throws java.sql.SQLException
This method is used to register output parameter on Callable Statements for Stored Procedures as each database seems to have a different method.- Overrides:
registerOutputParameter
in classorg.eclipse.persistence.internal.databaseaccess.DatabasePlatform
- Throws:
java.sql.SQLException
-
setParameterValueInDatabaseCall
public void setParameterValueInDatabaseCall(java.lang.Object parameter, java.sql.CallableStatement statement, java.lang.String name, org.eclipse.persistence.internal.sessions.AbstractSession session) throws java.sql.SQLException
- Overrides:
setParameterValueInDatabaseCall
in classorg.eclipse.persistence.internal.databaseaccess.DatabasePlatform
- Throws:
java.sql.SQLException
-
setNullFromDatabaseField
protected void setNullFromDatabaseField(org.eclipse.persistence.internal.helper.DatabaseField databaseField, java.sql.CallableStatement statement, java.lang.String name) throws java.sql.SQLException
- Overrides:
setNullFromDatabaseField
in classorg.eclipse.persistence.internal.databaseaccess.DatabasePlatform
- Throws:
java.sql.SQLException
-
getParameterValueFromDatabaseCall
public java.lang.Object getParameterValueFromDatabaseCall(java.sql.CallableStatement statement, java.lang.String name, org.eclipse.persistence.internal.sessions.AbstractSession session) throws java.sql.SQLException
- Overrides:
getParameterValueFromDatabaseCall
in classorg.eclipse.persistence.internal.databaseaccess.DatabasePlatform
- Throws:
java.sql.SQLException
-
-