|
Oracle Fusion Middleware Java API Reference for Oracle TopLink 11g Release 1 (11.1.1) E28847-01 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
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.MaxDBPlatform
public final class MaxDBPlatform
Database Platform for SAP MaxDB.
Wiki page: http://wiki.eclipse.org/EclipseLink/Development/DatabasePlatform/MaxDBPlatform
Usage
The MaxDB platform is configured in the persistence.xml by the following property:
<property name="eclipselink_target_database" value="MaxDB"/>
Forward mapping with EclipseLink assumes that MaxDB is configured for unicode (in version 7.7, this is the default). Unicode mode also needs to be specified in the URL as follows:
jdbc:sapdb://localhost/E32?unicode=yes
Tested with:
Limitations:
Field Summary | |
---|---|
private static org.eclipse.persistence.internal.databaseaccess.FieldTypeDefinition |
FIELD_TYPE_DEFINITION_BLOB |
private static org.eclipse.persistence.internal.databaseaccess.FieldTypeDefinition |
FIELD_TYPE_DEFINITION_CLOB |
private static int |
MAX_VARCHAR_UNICODE_LENGTH Maximum length of type VARCHAR UNICODE ( http://maxdb.sap.com/doc/7_8/45/33337d9faf2b34e10000000a1553f7/content.htm ) |
Fields inherited from class org.eclipse.persistence.platform.database.DatabasePlatform |
---|
DEFAULT_VARCHAR_SIZE |
Fields inherited from class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform |
---|
castSizeForVarcharParameter, classTypes, cursorCode, DEFAULT_MAX_BATCH_WRITING_SIZE, DEFAULT_PARAMETERIZED_MAX_BATCH_WRITING_SIZE, fieldTypes, IS_VALID_TIMEOUT, isCastRequired, maxBatchWritingSize, partitioningCallback, pingSQL, printOuterJoinInWhereClause, shouldBindAllParameters, shouldBindLiterals, shouldCacheAllStatements, shouldForceFieldNamesToUpperCase, shouldIgnoreCaseOnFieldComparisons, shouldOptimizeDataConversion, shouldTrimStrings, statementCacheSize, stringBindingSize, structConverters, supportsAutoCommit, tableCreationSuffix, transactionIsolation, typeConverters, Types_NCLOB, Types_SQLXML, useRownumFiltering, usesBatchWriting, usesByteArrayBinding, usesJDBCBatchWriting, usesNativeBatchWriting, usesNativeSQL, usesStreamsForBinding, usesStringBinding |
Fields inherited from class org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform |
---|
conversionManager, dataTypesConvertedFromAClass, dataTypesConvertedToAClass, defaultSequence, endDelimiter, platformOperators, sequences, sequencesLock, startDelimiter, tableQualifier, timestampQuery |
Constructor Summary | |
---|---|
MaxDBPlatform() |
Method Summary | |
---|---|
private void |
addNonBindingOperator(ExpressionOperator operator) |
protected java.util.Hashtable |
buildFieldTypes() |
ValueReadQuery |
buildSelectQueryForSequenceObject(java.lang.String sequenceName, java.lang.Integer size) |
boolean |
canBatchWriteWithOptimisticLocking(org.eclipse.persistence.internal.databaseaccess.DatabaseCall call) |
private static ExpressionOperator |
createCoalesceOperator() |
private static ExpressionOperator |
createConcatExpressionOperator() |
private static ExpressionOperator |
createCurrentDateExpressionOperator() Creates the expression operator representing the JPQL function current_date as defined by ? 4.6.17.2.3 of the JPA 2.0 specification |
private static ExpressionOperator |
createCurrentTimeExpressionOperator() Creates the expression operator representing the JPQL function current_timestamp as defined by ? 4.6.17.2.3 of the JPA 2.0 specification |
private static ExpressionOperator |
createNullifOperator() |
private static ExpressionOperator |
createNullValueOperator() |
private static ExpressionOperator |
createTodayExpressionOperator() Creates the expression operator representing the JPQL function current_timestamp as defined by ? 4.6.17.2.3 of the JPA 2.0 specification |
private static ExpressionOperator |
createToNumberOperator() |
private static ExpressionOperator |
createTrim2ExpressionOperator() |
int |
executeBatch(java.sql.Statement statement, boolean isStatementPrepared) |
protected java.lang.String |
getCreateTempTableSqlPrefix() |
int |
getMaxFieldNameSize() |
private java.lang.String |
getQualifiedSequenceName(java.lang.String sequenceName) |
java.lang.String |
getSelectForUpdateNoWaitString() |
java.lang.String |
getSelectForUpdateString() |
org.eclipse.persistence.internal.helper.DatabaseTable |
getTempTableForTable(org.eclipse.persistence.internal.helper.DatabaseTable table) |
protected void |
initializePlatformOperators() |
boolean |
isForUpdateCompatibleWithDistinct() |
boolean |
isMaxDB() |
protected void |
printFieldTypeSize(java.io.Writer writer, FieldDefinition field, org.eclipse.persistence.internal.databaseaccess.FieldTypeDefinition fieldType) |
boolean |
shouldAlwaysUseTempStorageForModifyAll() |
boolean |
shouldBindLiterals() |
boolean |
shouldOptimizeDataConversion() |
boolean |
shouldPrintOuterJoinInWhereClause() |
boolean |
shouldUseJDBCOuterJoinSyntax() |
boolean |
supportsIndividualTableLocking() |
boolean |
supportsLocalTempTables() |
boolean |
supportsNativeSequenceNumbers() |
boolean |
supportsSequenceObjects() |
boolean |
supportsStoredFunctions() |
Methods inherited from class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform |
---|
addBatch, addStructConverter, allowsSizeInProcedureArguments, appendBoolean, appendByteArray, appendCalendar, appendDate, appendLiteralToCall, appendLiteralToCallWithBinding, appendNumber, appendParameter, appendParameterInternal, appendString, appendTime, appendTimestamp, autoCommit, beginTransaction, buildBatchCriteria, buildBatchCriteriaForComplexId, buildCallWithReturning, buildClassTypes, buildCreateIndex, buildCreateIndex, buildDropIndex, buildDropIndex, buildProcedureCallString, buildSelectQueryForIdentity, buildSelectQueryForIdentity, buildSelectQueryForSequenceObject, buildSequenceObjectAlterIncrementWriter, buildSequenceObjectCreationWriter, buildSequenceObjectDeletionWriter, canBuildCallWithReturning, commitTransaction, computeMaxRowsForSQL, convertToDatabaseType, copyInto, createArray, createArray, createPlatformDefaultSequence, createStruct, createStruct, dontBindUpdateAllQueryUsingTempTables, executeStoredProcedure, freeTemporaryObject, getAssignmentString, getBatchBeginString, getBatchDelimiterString, getBatchEndString, getCastSizeForVarcharParameter, getClassTypes, getConnection, getConstraintDeletionString, getCreateTempTableSqlBodyForTable, getCreateTempTableSqlSuffix, getCreateViewString, getCreationInOutputProcedureToken, getCreationOutputProcedureToken, getCursorCode, getCustomModifyValueForCall, getDefaultSequenceTableName, getFieldTypeDefinition, getFieldTypes, getFunctionCallHeader, getIdentifierQuoteCharacter, getIndexNamePrefix, getInOutputProcedureToken, getInputProcedureToken, getJDBCOuterJoinString, getJDBCType, getJDBCType, getJdbcTypeName, getMaxBatchWritingSize, getMaxForeignKeyNameSize, getMaxIndexNameSize, getMaxUniqueKeyNameSize, getNoWaitString, getObjectFromResultSet, getOutputProcedureToken, getPartitioningCallback, getPingSQL, getProcedureArgumentSetter, getProcedureArgumentString, getProcedureAsString, getProcedureBeginString, getProcedureCallHeader, getProcedureCallTail, getProcedureEndString, getQualifiedName, getQualifiedSequenceTableName, getRefValue, getRefValue, getSelectForUpdateOfString, getSelectForUpdateWaitString, getSequenceCounterFieldName, getSequenceNameFieldName, getSequencePreallocationSize, getSequenceTableName, getStatementCacheSize, getStoredProcedureParameterPrefix, getStoredProcedureTerminationToken, getStringBindingSize, getStructConverters, getTableCreationSuffix, getTransactionIsolation, getTypeConverters, getVPDClearIdentifierQuery, getVPDCreationFunctionString, getVPDCreationPolicyString, getVPDDeletionString, getVPDSetIdentifierQuery, hasPartitioningCallback, initialize, initializeConnectionData, isAlterSequenceObjectSupported, isCastRequired, isDynamicSQLRequiredForFunctions, isInformixOuterJoin, isLockTimeoutException, isNullAllowedInSelectClause, isXDBDocument, maximumNumericValues, minimumNumericValues, minimumTimeIncrement, prepareBatchStatement, printFieldIdentityClause, printFieldNotNullClause, printFieldNullClause, printFieldTypeSize, printFieldUnique, printFieldUnique, printSQLSelectStatement, printStoredFunctionReturnKeyWord, printValuelist, printValuelist, registerOutputParameter, requiresNamedPrimaryKeyConstraints, requiresProcedureBrackets, requiresProcedureCallBrackets, requiresProcedureCallOuputToken, requiresTableInIndexDropDDL, requiresTypeNameToRegisterOutputParameter, requiresUniqueConstraintCreationOnTableCreate, retrieveFirstPrimaryKeyOrOne, rollbackTransaction, setCastSizeForVarcharParameter, setClassTypes, setCursorCode, setFieldTypes, setIsCastRequired, setMaxBatchWritingSize, setNullFromDatabaseField, setParameterValueInDatabaseCall, setPartitioningCallback, setPingSQL, setPrintOuterJoinInWhereClause, setSequenceCounterFieldName, setSequenceNameFieldName, setSequenceTableName, setShouldBindAllParameters, setShouldBindLiterals, setShouldCacheAllStatements, setShouldForceFieldNamesToUpperCase, setShouldIgnoreCaseOnFieldComparisons, setShouldOptimizeDataConversion, setShouldTrimStrings, setShouldUseRownumFiltering, setStatementCacheSize, setStringBindingSize, setSupportsAutoCommit, setTableCreationSuffix, setTransactionIsolation, setUsesBatchWriting, setUsesByteArrayBinding, setUsesJDBCBatchWriting, setUsesNativeBatchWriting, setUsesNativeSQL, setUsesStreamsForBinding, setUsesStringBinding, shouldBindAllParameters, shouldCacheAllStatements, shouldCreateIndicesForPrimaryKeys, shouldCreateIndicesOnUniqueKeys, shouldForceFieldNamesToUpperCase, shouldIgnoreCaseOnFieldComparisons, shouldIgnoreException, shouldNativeSequenceUseTransaction, shouldPrintAliasForUpdate, shouldPrintConstraintNameAfter, shouldPrintFieldIdentityClause, shouldPrintInOutputTokenBeforeType, shouldPrintInputTokenAtStart, shouldPrintLockingClauseAfterWhereClause, shouldPrintOutputTokenAtStart, shouldPrintOutputTokenBeforeType, shouldPrintStoredProcedureArgumentNameInCall, shouldPrintStoredProcedureVariablesAfterBeginString, shouldTempTableSpecifyPrimaryKeys, shouldTrimStrings, shouldUseCustomModifyForCall, shouldUseRownumFiltering, supportsANSIInnerJoinSyntax, supportsAutoCommit, supportsAutoConversionToNumericForArithmeticOperations, supportsForeignKeyConstraints, supportsGlobalTempTables, supportsIdentity, supportsIndexes, supportsLockingQueriesWithMultipleTables, supportsNestingOuterJoins, supportsOuterJoinsWithBrackets, supportsPrimaryKeyConstraint, supportsTempTables, supportsUniqueColumns, supportsUniqueKeyConstraints, supportsVPD, usesBatchWriting, usesByteArrayBinding, usesJDBCBatchWriting, usesNativeBatchWriting, usesNativeSQL, usesSequenceTable, usesStreamsForBinding, usesStringBinding, wasFailureCommunicationBased, writeAutoAssignmentSetClause, writeAutoJoinWhereClause, writeCleanUpTempTableSql, writeCreateTempTableSql, writeDeleteFromTargetTableUsingTempTableSql, writeFields, writeFieldsAutoClause, writeFieldsList, writeInsertIntoTableSql, writeJoinWhereClause, writeLOB, writeParameterMarker, writeTableCreationSuffix, writeUpdateOriginalFromTempTableSql |
Methods inherited from class org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform |
---|
addOperator, addSequence, addSequence, clone, convertObject, createConnectionCustomizer, getConversionManager, getDataTypesConvertedFrom, getDataTypesConvertedTo, getDefaultSequence, getDefaultSequenceToWrite, getEndDelimiter, getOperator, getPlatformOperators, getSelectSequenceQuery, getSequence, getSequences, getSequencesToWrite, getStartDelimiter, getTableQualifier, getTimestampFromServer, getTimestampQuery, getUpdateSequenceQuery, hasDefaultSequence, isAccess, isAttunity, isCloudscape, isDB2, isDBase, isDerby, isFirebird, isH2, isHSQL, isInformix, isMySQL, isODBC, isOracle, isOracle9, isPointBase, isPostgreSQL, isSQLAnywhere, isSQLServer, isSybase, isSymfoware, isTimesTen, isTimesTen7, removeAllSequences, removeSequence, sequencesAfterCloneCleanup, setConversionManager, setDefaultSequence, setEndDelimiter, setSelectSequenceNumberQuery, setSequencePreallocationSize, setSequences, setStartDelimiter, setTableQualifier, setTimestampQuery, setUpdateSequenceQuery, toString, usesPlatformDefaultSequence |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private static final org.eclipse.persistence.internal.databaseaccess.FieldTypeDefinition FIELD_TYPE_DEFINITION_CLOB
private static final org.eclipse.persistence.internal.databaseaccess.FieldTypeDefinition FIELD_TYPE_DEFINITION_BLOB
private static final int MAX_VARCHAR_UNICODE_LENGTH
http://maxdb.sap.com/doc/7_8/45/33337d9faf2b34e10000000a1553f7/content.htm
)
Constructor Detail |
---|
public MaxDBPlatform()
Method Detail |
---|
public boolean isForUpdateCompatibleWithDistinct()
isForUpdateCompatibleWithDistinct
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public java.lang.String getSelectForUpdateString()
getSelectForUpdateString
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public java.lang.String getSelectForUpdateNoWaitString()
getSelectForUpdateNoWaitString
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
protected final java.util.Hashtable buildFieldTypes()
buildFieldTypes
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public boolean supportsIndividualTableLocking()
supportsIndividualTableLocking
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
protected void printFieldTypeSize(java.io.Writer writer, FieldDefinition field, org.eclipse.persistence.internal.databaseaccess.FieldTypeDefinition fieldType) throws java.io.IOException
printFieldTypeSize
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
java.io.IOException
protected final void initializePlatformOperators()
initializePlatformOperators
in class org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform
private static final ExpressionOperator createConcatExpressionOperator()
private static final ExpressionOperator createTodayExpressionOperator()
private static final ExpressionOperator createCurrentDateExpressionOperator()
private static final ExpressionOperator createCurrentTimeExpressionOperator()
private static final ExpressionOperator createTrim2ExpressionOperator()
private static final ExpressionOperator createNullValueOperator()
private static final ExpressionOperator createCoalesceOperator()
private static final ExpressionOperator createToNumberOperator()
private static final ExpressionOperator createNullifOperator()
public boolean shouldOptimizeDataConversion()
shouldOptimizeDataConversion
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
private void addNonBindingOperator(ExpressionOperator operator)
public final boolean supportsNativeSequenceNumbers()
supportsNativeSequenceNumbers
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public final ValueReadQuery buildSelectQueryForSequenceObject(java.lang.String sequenceName, java.lang.Integer size)
buildSelectQueryForSequenceObject
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
protected final java.lang.String getCreateTempTableSqlPrefix()
getCreateTempTableSqlPrefix
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public final int getMaxFieldNameSize()
getMaxFieldNameSize
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
private final java.lang.String getQualifiedSequenceName(java.lang.String sequenceName)
public final boolean supportsLocalTempTables()
supportsLocalTempTables
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public final org.eclipse.persistence.internal.helper.DatabaseTable getTempTableForTable(org.eclipse.persistence.internal.helper.DatabaseTable table)
getTempTableForTable
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public final boolean isMaxDB()
isMaxDB
in interface org.eclipse.persistence.internal.databaseaccess.Platform
isMaxDB
in class org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform
public final boolean shouldAlwaysUseTempStorageForModifyAll()
shouldAlwaysUseTempStorageForModifyAll
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public final boolean shouldBindLiterals()
shouldBindLiterals
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public final boolean shouldPrintOuterJoinInWhereClause()
shouldPrintOuterJoinInWhereClause
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public final boolean shouldUseJDBCOuterJoinSyntax()
shouldUseJDBCOuterJoinSyntax
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public boolean supportsSequenceObjects()
supportsSequenceObjects
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public final boolean supportsStoredFunctions()
supportsStoredFunctions
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public boolean canBatchWriteWithOptimisticLocking(org.eclipse.persistence.internal.databaseaccess.DatabaseCall call)
canBatchWriteWithOptimisticLocking
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public int executeBatch(java.sql.Statement statement, boolean isStatementPrepared) throws java.sql.SQLException
executeBatch
in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
java.sql.SQLException
|
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |