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
public class OracleAdapter extends JdbcAdapter
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 SummaryFields Modifier and Type Field Description protected static booleaninitDonestatic StringNEW_BLOB_FUNCTIONstatic StringNEW_CLOB_FUNCTIONstatic StringORACLE_BLOBstatic StringORACLE_CLOBstatic StringORACLE_FLOATstatic StringORACLE_NCLOBprotected static intoracleCursorTypeprotected static booleansupportsOracleLOBstatic StringTRIM_FUNCTIONFields inherited from class org.apache.cayenne.dba.JdbcAdapterbatchQueryBuilderFactory, caseInsensitiveCollations, ejbqlTranslatorFactory, extendedTypes, logger, quotingStrategy, resourceLocator, supportsBatchUpdates, supportsGeneratedKeys, supportsUniqueConstraints, typesHandler
- 
Constructor SummaryConstructors Constructor Description OracleAdapter(RuntimeProperties runtimeProperties, List<ExtendedType> defaultExtendedTypes, List<ExtendedType> userExtendedTypes, List<ExtendedTypeFactory> extendedTypeFactories, ResourceLocator resourceLocator, ValueObjectTypeRegistry valueObjectTypeRegistry)
- 
Method SummaryModifier and Type Method Description voidbindParameter(PreparedStatement statement, ParameterBinding binding)Binds an object value to PreparedStatement's parameter.DbAttributebuildAttribute(String name, String typeName, int type, int size, int scale, boolean allowNulls)Fixes some reverse engineering problems.protected voidconfigureExtendedTypes(ExtendedTypeMap map)Installs appropriate ExtendedTypes as converters for passing values between JDBC and Java layers.protected EJBQLTranslatorFactorycreateEJBQLTranslatorFactory()Creates and returns anEJBQLTranslatorFactoryused to generate visitors for EJBQL to SQL translations.protected PkGeneratorcreatePkGenerator()Creates and returns a primary key generator.Collection<String>dropTableStatements(DbEntity table)Returns a query string to drop a table corresponding toentDbEntity.SQLActiongetAction(Query query, DataNode node)Uses OracleActionBuilder to create the right action.static intgetOracleCursorType()Returns an Oracle JDBC extension type defined in oracle.jdbc.driver.OracleTypes.CURSOR.QualifierTranslatorgetQualifierTranslator(QueryAssembler queryAssembler)Returns a trimming translator.SelectTranslatorgetSelectTranslator(SelectQuery<?> query, EntityResolver entityResolver)Returns a SelectTranslator that works with the adapter target database.List<String>getSystemSchemas()protected static voidinitDriverInformation()static booleanisSupportsOracleLOB()Methods inherited from class org.apache.cayenne.dba.JdbcAdaptercreateFkConstraint, createQuotingStrategy, createTable, createTableAppendColumn, createTableAppendPKClause, createUniqueConstraint, externalTypesForJdbcType, findResource, getBatchTerminator, getEjbqlTranslatorFactory, getExtendedTypes, getJdbcEventLogger, getPkGenerator, getQuotingStrategy, getSystemCatalogs, getType, initExtendedTypes, setEjbqlTranslatorFactory, setPkGenerator, setSupportsBatchUpdates, setSupportsGeneratedKeys, setSupportsUniqueConstraints, sizeAndPrecision, supportsBatchUpdates, supportsCatalogsOnReverseEngineering, supportsGeneratedKeys, supportsUniqueConstraints, tableTypeForTable, tableTypeForView, typeSupportsLength, unwrap
- 
Field Details- 
ORACLE_FLOAT- See Also:
- Constant Field Values
 
- 
ORACLE_BLOB- See Also:
- Constant Field Values
 
- 
ORACLE_CLOB- See Also:
- Constant Field Values
 
- 
ORACLE_NCLOB- See Also:
- Constant Field Values
 
- 
TRIM_FUNCTION- See Also:
- Constant Field Values
 
- 
NEW_CLOB_FUNCTION- See Also:
- Constant Field Values
 
- 
NEW_BLOB_FUNCTION- See Also:
- Constant Field Values
 
- 
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.
- 
getSelectTranslatorDescription copied from interface:DbAdapterReturns a SelectTranslator that works with the adapter target database.- Specified by:
- getSelectTranslatorin interface- DbAdapter
- Overrides:
- getSelectTranslatorin class- JdbcAdapter
- Since:
- 4.0
 
- 
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
 
- 
createPkGeneratorCreates and returns a primary key generator. Overrides superclass implementation to return an instance of OraclePkGenerator.- Overrides:
- createPkGeneratorin 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, ExceptionDescription 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
 
- 
getQualifierTranslatorReturns a trimming translator.- Specified by:
- getQualifierTranslatorin interface- DbAdapter
- Overrides:
- getQualifierTranslatorin class- JdbcAdapter
 
- 
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
 
 
-