public class SAPDBAdapter extends BaseDatastoreAdapter
BaseDatastoreAdapter.DatastoreTypeMappings
catalogSeparator, datastoreMajorVersion, datastoreMinorVersion, datastoreProductName, datastoreProductVersion, datastoreRevisionVersion, driverMajorVersion, driverMinorVersion, driverName, driverVersion, identifierQuoteString, MAX_IDENTIFIER_LENGTH, maxColumnNameLength, maxConstraintNameLength, maxIndexNameLength, maxTableNameLength, NONRESERVED_WORDS, properties, reservedKeywords, SQL2003_RESERVED_WORDS, SQL92_RESERVED_WORDS, SQL99_RESERVED_WORDS, supportedJdbcTypesById, supportedOptions, unsupportedJdbcTypesById
ACCESS_PARENTQUERY_IN_SUBQUERY_JOINED, ALTER_TABLE_DROP_CONSTRAINT_SYNTAX, ALTER_TABLE_DROP_FOREIGN_KEY_CONSTRAINT, ANALYSIS_METHODS, ANSI_CROSSJOIN_SYNTAX, ANSI_JOIN_SYNTAX, AUTO_INCREMENT_COLUMN_TYPE_SPECIFICATION, AUTO_INCREMENT_KEYS_NULL_SPECIFICATION, AUTO_INCREMENT_PK_IN_CREATE_TABLE_COLUMN_DEF, BIT_IS_REALLY_BOOLEAN, BLOB_SET_USING_SETSTRING, BOOLEAN_COMPARISON, CATALOGS_IN_TABLE_DEFINITIONS, CHAR_COLUMNS_PADDED_WITH_SPACES, CHECK_IN_CREATE_STATEMENTS, CHECK_IN_END_CREATE_STATEMENTS, CLOB_SET_USING_SETSTRING, CREATE_INDEXES_BEFORE_FOREIGN_KEYS, CROSSJOIN_ASINNER11_SYNTAX, DATETIME_STORES_MILLISECS, DEFAULT_BEFORE_NULL_IN_COLUMN_OPTIONS, DEFAULT_KEYWORD_IN_COLUMN_OPTIONS, DEFAULT_KEYWORD_WITH_NOT_NULL_IN_COLUMN_OPTIONS, DEFERRED_CONSTRAINTS, DISTINCT_WITH_SELECT_FOR_UPDATE, ESCAPE_EXPRESSION_IN_LIKE_PREDICATE, EXISTS_SYNTAX, FK_DELETE_ACTION_CASCADE, FK_DELETE_ACTION_DEFAULT, FK_DELETE_ACTION_NULL, FK_DELETE_ACTION_RESTRICT, FK_IN_END_CREATE_STATEMENTS, FK_UPDATE_ACTION_CASCADE, FK_UPDATE_ACTION_DEFAULT, FK_UPDATE_ACTION_NULL, FK_UPDATE_ACTION_RESTRICT, GET_GENERATED_KEYS_STATEMENT, GROUP_BY_REQUIRES_ALL_SELECT_PRIMARIES, GROUPING_WITH_SELECT_FOR_UPDATE, HAVING_WITH_SELECT_FOR_UPDATE, HOLD_CURSORS_OVER_COMMIT, IDENTIFIERS_LOWERCASE, IDENTIFIERS_LOWERCASE_QUOTED, IDENTIFIERS_MIXEDCASE, IDENTIFIERS_MIXEDCASE_QUOTED, IDENTIFIERS_MIXEDCASE_QUOTED_SENSITIVE, IDENTIFIERS_MIXEDCASE_SENSITIVE, IDENTIFIERS_UPPERCASE, IDENTIFIERS_UPPERCASE_QUOTED, IDENTITY_COLUMNS, INCLUDE_ORDERBY_COLS_IN_SELECT, LOCK_OPTION_PLACED_AFTER_FROM, LOCK_OPTION_PLACED_WITHIN_JOIN, LOCK_WITH_SELECT_FOR_UPDATE, MULTITABLES_WITH_SELECT_FOR_UPDATE, NATIVE_ENUM_TYPE, NULL_EQUALS_EMPTY_STRING, NULLS_IN_CANDIDATE_KEYS, NULLS_KEYWORD_IN_COLUMN_OPTIONS, OPERATOR_BITWISE_AND, OPERATOR_BITWISE_OR, OPERATOR_BITWISE_XOR, ORDERBY_NULLS_DIRECTIVES, ORDERBY_NULLS_USING_CASE_NULL, ORDERBY_NULLS_USING_COLUMN_IS_NULL, ORDERBY_NULLS_USING_ISNULL, ORDERBY_USING_SELECT_COLUMN_INDEX, ORDERING_WITH_SELECT_FOR_UPDATE, PARAMETER_IN_CASE_IN_UPDATE_CLAUSE, PERSIST_OF_UNASSIGNED_CHAR, PRIMARYKEY_IN_CREATE_STATEMENTS, PROJECTION_IN_TABLE_REFERENCE_JOINS, RESULTSET_TYPE_FORWARD_ONLY, RESULTSET_TYPE_SCROLL_INSENSITIVE, RESULTSET_TYPE_SCROLL_SENSITIVE, RIGHT_OUTER_JOIN, SCHEMAS_IN_TABLE_DEFINITIONS, SELECT_FOR_UPDATE_NOWAIT, SEQUENCES, SOME_ANY_ALL_SUBQUERY_EXPRESSIONS, STATEMENT_BATCHING, STORED_PROCEDURES, SUBQUERY_IN_HAVING, TX_ISOLATION_NONE, TX_ISOLATION_READ_COMMITTED, TX_ISOLATION_READ_UNCOMMITTED, TX_ISOLATION_REPEATABLE_READ, TX_ISOLATION_SERIALIZABLE, UNION_SYNTAX, UNIQUE_IN_END_CREATE_STATEMENTS, UPDATE_DELETE_STATEMENT_ALLOW_TABLE_ALIAS_IN_WHERE_CLAUSE, UPDATE_STATEMENT_ALLOW_TABLE_ALIAS_IN_SET_CLAUSE, USE_UNION_ALL, VALUE_GENERATION_UUID_STRING, VIEWS
Constructor and Description |
---|
SAPDBAdapter(DatabaseMetaData metadata)
Constructs an SAP DB adapter based on the given JDBC metadata.
|
Modifier and Type | Method and Description |
---|---|
String |
getAddCandidateKeyStatement(CandidateKey ck,
IdentifierFactory factory)
Returns the appropriate SQL to add a candidate key to its table.
|
String |
getAddForeignKeyStatement(ForeignKey fk,
IdentifierFactory factory)
Returns the appropriate SQL to add a foreign key to its table.
|
String |
getAddPrimaryKeyStatement(PrimaryKey pk,
IdentifierFactory factory)
Returns the appropriate SQL to add a primary key to its table.
|
String |
getSelectWithLockOption()
The option to specify in "SELECT ...
|
String |
getSequenceCreateStmt(String sequenceName,
Integer min,
Integer max,
Integer start,
Integer increment,
Integer cacheSize)
Accessor for the sequence statement to create the sequence.
|
String |
getSequenceNextStmt(String sequenceName)
Accessor for the statement for getting the next id from the sequence for this datastore.
|
Class |
getSQLMethodClass(String className,
String methodName,
org.datanucleus.ClassLoaderResolver clr)
Accessor for the SQLMethod class for the query invocation of specified class + method name (if available for this datastore).
|
String |
getVendorID()
Accessor for the Vendor ID for this datastore.
|
protected void |
loadDatastoreMappings(org.datanucleus.plugin.PluginManager mgr,
org.datanucleus.ClassLoaderResolver clr)
Load all datastore mappings for this RDBMS database.
|
addSQLTypeForJDBCType, deregisterDatastoreMappingsForJDBCType, getAdapterTime, getAddColumnStatement, getAutoIncrementJavaTypeForType, getAutoIncrementKeyword, getAutoIncrementStmt, getCatalogName, getCatalogSeparator, getCheckConstraintForValues, getColumns, getContinuationString, getCreateDatabaseStatement, getCreateIndexStatement, getCreateTableStatement, getDatastoreDateStatement, getDatastoreDriverName, getDatastoreDriverVersion, getDatastoreIdentifierMaxLength, getDatastoreMappingClass, getDatastoreProductName, getDatastoreProductVersion, getDefaultSqlTypeForJavaType, getDeleteTableStatement, getDriverMajorVersion, getDriverMinorVersion, getDropDatabaseStatement, getDropTableStatement, getDropViewStatement, getEscapeCharacter, getEscapePatternExpression, getExistingIndexes, getIdentifierQuoteString, getInsertStatementForNoColumns, getJDBCTypeForName, getMappingManager, getMaxForeignKeys, getMaxIndexes, getMiliseconds, getNameForJDBCType, getNewUUIDFunction, getNumericConversionFunction, getOrderString, getPatternExpressionAnyCharacter, getPatternExpressionZeroMoreCharacters, getRangeByLimitEndOfStatementClause, getRangeByRowNumberColumn, getRangeByRowNumberColumn2, getRequiredTransactionIsolationLevel, getSchemaName, getSelectForUpdateText, getSelectNewUUIDStmt, getSQLOperationClass, getSQLTypeInfoForJdbcType, getSupportedOptions, getSurrogateForEmptyStrings, getTime, getTransactionIsolationForSchemaCreation, getUnlimitedLengthPrecisionValue, getUpdateTableStatement, getValueForProperty, initialise, initialiseDatastore, initialiseTypes, isIdentityFieldDataType, isReservedKeyword, isStatementCancel, isStatementTimeout, isValidPrimaryKeyType, iteratorReservedWords, newFKInfo, newRDBMSColumnInfo, newSQLTypeInfo, registerDatastoreMapping, registerDatastoreMapping, sequenceExists, setProperties, supportsOption, supportsQueryFetchSize, supportsTransactionIsolation, toString, validToIndexMapping, validToSelectMappingInStatement
public SAPDBAdapter(DatabaseMetaData metadata)
metadata
- the database metadata.public String getVendorID()
DatastoreAdapter
getVendorID
in interface DatastoreAdapter
getVendorID
in class BaseDatastoreAdapter
public String getSelectWithLockOption()
getSelectWithLockOption
in interface DatastoreAdapter
getSelectWithLockOption
in class BaseDatastoreAdapter
public String getAddPrimaryKeyStatement(PrimaryKey pk, IdentifierFactory factory)
BaseDatastoreAdapter
ALTER TABLE FOO ADD CONSTRAINT FOO_PK PRIMARY KEY (BAR) ALTER TABLE FOO ADD PRIMARY KEY (BAR)
getAddPrimaryKeyStatement
in interface DatastoreAdapter
getAddPrimaryKeyStatement
in class BaseDatastoreAdapter
pk
- An object describing the primary key.factory
- Identifier factorypublic String getAddCandidateKeyStatement(CandidateKey ck, IdentifierFactory factory)
BaseDatastoreAdapter
ALTER TABLE FOO ADD CONSTRAINT FOO_CK UNIQUE (BAZ) ALTER TABLE FOO ADD UNIQUE (BAZ)
getAddCandidateKeyStatement
in interface DatastoreAdapter
getAddCandidateKeyStatement
in class BaseDatastoreAdapter
ck
- An object describing the candidate key.factory
- Identifier factorypublic String getAddForeignKeyStatement(ForeignKey fk, IdentifierFactory factory)
BaseDatastoreAdapter
ALTER TABLE FOO ADD CONSTRAINT FOO_FK1 FOREIGN KEY (BAR, BAZ) REFERENCES ABC (COL1, COL2) ALTER TABLE FOO ADD FOREIGN KEY (BAR, BAZ) REFERENCES ABC (COL1, COL2)
getAddForeignKeyStatement
in interface DatastoreAdapter
getAddForeignKeyStatement
in class BaseDatastoreAdapter
fk
- An object describing the foreign key.factory
- Identifier factorypublic String getSequenceCreateStmt(String sequenceName, Integer min, Integer max, Integer start, Integer increment, Integer cacheSize)
getSequenceCreateStmt
in interface DatastoreAdapter
getSequenceCreateStmt
in class BaseDatastoreAdapter
sequenceName
- Name of the sequencemin
- Minimum value for the sequencemax
- Maximum value for the sequencestart
- Start value for the sequenceincrement
- Increment value for the sequencecacheSize
- Cache size for the sequencepublic String getSequenceNextStmt(String sequenceName)
getSequenceNextStmt
in interface DatastoreAdapter
getSequenceNextStmt
in class BaseDatastoreAdapter
sequenceName
- Name of the sequencepublic Class getSQLMethodClass(String className, String methodName, org.datanucleus.ClassLoaderResolver clr)
DatastoreAdapter
getSQLMethodClass
in interface DatastoreAdapter
getSQLMethodClass
in class BaseDatastoreAdapter
className
- Name of the class (or null if this is a STATIC method)methodName
- Method nameclr
- ClassLoader resolver, in case className is a subclass of a supported typeprotected void loadDatastoreMappings(org.datanucleus.plugin.PluginManager mgr, org.datanucleus.ClassLoaderResolver clr)
loadDatastoreMappings
in class BaseDatastoreAdapter
mgr
- the PluginManagerclr
- the ClassLoaderResolverCopyright © 2019. All rights reserved.