Package org.apache.cayenne.dba.oracle
Class OracleAdapter
java.lang.Object
org.apache.cayenne.dba.JdbcAdapter
org.apache.cayenne.dba.oracle.OracleAdapter
- All Implemented Interfaces:
- DbAdapter
- Direct Known Subclasses:
- Oracle8Adapter
DbAdapter implementation for Oracle RDBMS
 . Sample connection settings to use with Oracle are shown below:
 
          test-oracle.jdbc.username = test
          test-oracle.jdbc.password = secret
          test-oracle.jdbc.url = jdbc:oracle:thin:@//192.168.0.20:1521/ora1
          test-oracle.jdbc.driver = oracle.jdbc.driver.OracleDriver
 - 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected static booleanstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringprotected static intprotected static booleanstatic final StringFields inherited from class org.apache.cayenne.dba.JdbcAdaptercaseInsensitiveCollations, ejbqlTranslatorFactory, extendedTypes, logger, quotingStrategy, resourceLocator, supportsBatchUpdates, supportsGeneratedKeys, supportsUniqueConstraints, typesHandler
- 
Constructor SummaryConstructorsConstructorDescriptionOracleAdapter(RuntimeProperties runtimeProperties, List<ExtendedType> defaultExtendedTypes, List<ExtendedType> userExtendedTypes, List<ExtendedTypeFactory> extendedTypeFactories, ResourceLocator resourceLocator, ValueObjectTypeRegistry valueObjectTypeRegistry) 
- 
Method SummaryModifier and TypeMethodDescriptionvoidbindParameter(PreparedStatement statement, ParameterBinding binding) Binds an object value to PreparedStatement's parameter.buildAttribute(String name, String typeName, int type, int size, int scale, boolean allowNulls) Fixes some reverse engineering problems.protected voidInstalls appropriate ExtendedTypes as converters for passing values between JDBC and Java layers.protected EJBQLTranslatorFactoryCreates and returns anEJBQLTranslatorFactoryused to generate visitors for EJBQL to SQL translations.dropTableStatements(DbEntity table) Returns a query string to drop a table corresponding toentDbEntity.Uses OracleActionBuilder to create the right action.static intReturns an Oracle JDBC extension type defined in oracle.jdbc.driver.OracleTypes.CURSOR.protected static voidstatic booleanbooleantypeSupportsScale(int type) Returns true if supplied type can have a scale attribute as a part of column definition.Methods inherited from class org.apache.cayenne.dba.JdbcAdaptercreateFkConstraint, createQuotingStrategy, createTable, createTableAppendColumn, createTableAppendPKClause, createUniqueConstraint, externalTypesForJdbcType, findResource, getBatchTerminator, getEjbqlTranslatorFactory, getExtendedTypes, getJdbcEventLogger, getPkGenerator, getQuotingStrategy, getSelectTranslator, getSystemCatalogs, getType, initExtendedTypes, setEjbqlTranslatorFactory, setPkGenerator, setSupportsBatchUpdates, setSupportsGeneratedKeys, setSupportsUniqueConstraints, sizeAndPrecision, supportsBatchUpdates, supportsCatalogsOnReverseEngineering, supportsGeneratedKeys, supportsUniqueConstraints, tableTypeForTable, tableTypeForView, typeSupportsLength, unwrapMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.cayenne.dba.DbAdaptersupportsGeneratedKeysForBatchInserts
- 
Field Details- 
ORACLE_FLOAT- See Also:
 
- 
ORACLE_BLOB- See Also:
 
- 
ORACLE_CLOB- See Also:
 
- 
ORACLE_NCLOB- See Also:
 
- 
TRIM_FUNCTION- See Also:
 
- 
NEW_CLOB_FUNCTION- See Also:
 
- 
NEW_BLOB_FUNCTION- See Also:
 
- 
initDoneprotected static boolean initDone
- 
oracleCursorTypeprotected static int oracleCursorType
- 
supportsOracleLOBprotected static boolean supportsOracleLOB
 
- 
- 
Constructor Details- 
OracleAdapterpublic OracleAdapter(RuntimeProperties runtimeProperties, List<ExtendedType> defaultExtendedTypes, List<ExtendedType> userExtendedTypes, List<ExtendedTypeFactory> extendedTypeFactories, ResourceLocator resourceLocator, ValueObjectTypeRegistry valueObjectTypeRegistry) 
 
- 
- 
Method Details- 
initDriverInformationprotected static void initDriverInformation()
- 
isSupportsOracleLOBpublic static boolean isSupportsOracleLOB()
- 
getOracleCursorTypepublic static int getOracleCursorType()Returns an Oracle JDBC extension type defined in oracle.jdbc.driver.OracleTypes.CURSOR. This value is determined from Oracle driver classes via reflection in runtime, so that Cayenne code has no compile dependency on the driver. This means that calling this method when the driver is not available will result in an exception.
- 
getSqlTreeProcessor- Specified by:
- getSqlTreeProcessorin interface- DbAdapter
- Overrides:
- getSqlTreeProcessorin class- JdbcAdapter
- Returns:
- SQLTreeProcessorthat can adjust SQL tree to specific database flavour
- Since:
- 4.2
 
- 
createEJBQLTranslatorFactoryDescription copied from class:JdbcAdapterCreates and returns anEJBQLTranslatorFactoryused to generate visitors for EJBQL to SQL translations. This method should be overriden by subclasses that need to customize EJBQL generation.- Overrides:
- createEJBQLTranslatorFactoryin class- JdbcAdapter
- Since:
- 3.0
 
- 
configureExtendedTypesInstalls appropriate ExtendedTypes as converters for passing values between JDBC and Java layers.- Overrides:
- configureExtendedTypesin class- JdbcAdapter
 
- 
dropTableStatementsReturns a query string to drop a table corresponding toentDbEntity. Changes superclass behavior to drop all related foreign key constraints.- Specified by:
- dropTableStatementsin interface- DbAdapter
- Overrides:
- dropTableStatementsin class- JdbcAdapter
- Since:
- 3.0
 
- 
bindParameterpublic void bindParameter(PreparedStatement statement, ParameterBinding binding) throws SQLException, Exception Description copied from interface:DbAdapterBinds an object value to PreparedStatement's parameter.- Specified by:
- bindParameterin interface- DbAdapter
- Overrides:
- bindParameterin class- JdbcAdapter
- Throws:
- SQLException
- Exception
 
- 
buildAttributepublic DbAttribute buildAttribute(String name, String typeName, int type, int size, int scale, boolean allowNulls) Fixes some reverse engineering problems. Namely if a columns is created as DECIMAL and has non-positive precision it is converted to INTEGER.- Specified by:
- buildAttributein interface- DbAdapter
- Overrides:
- buildAttributein class- JdbcAdapter
- Parameters:
- name- database column name
- typeName- database specific type name, may be used as a hint to determine the right JDBC type.
- type- JDBC column type
- size- database column size (ignored if less than zero)
- scale- database column scale, i.e. the number of decimal digits (ignored if less than zero)
- allowNulls- database column nullable parameter
 
- 
getActionUses OracleActionBuilder to create the right action.- Specified by:
- getActionin interface- DbAdapter
- Overrides:
- getActionin class- JdbcAdapter
- Since:
- 1.2
 
- 
getSystemSchemas- Specified by:
- getSystemSchemasin interface- DbAdapter
- Overrides:
- getSystemSchemasin class- JdbcAdapter
- Returns:
- list of system schemas
 
- 
typeSupportsScalepublic boolean typeSupportsScale(int type) Description copied from class:JdbcAdapterReturns true if supplied type can have a scale attribute as a part of column definition.- Specified by:
- typeSupportsScalein interface- DbAdapter
- Overrides:
- typeSupportsScalein class- JdbcAdapter
- Parameters:
- type- sql type code
- Returns:
- trueif a given type supports scale
- Since:
- 5.0
 
 
-