java.lang.Object
org.litebridgedb.db.spi.impl.AbstractDatabaseProvider
org.litebridgedb.db.oracle.OracleDatabaseProvider
- All Implemented Interfaces:
DatabaseProvider
Oracle Database Provider for Litebridge.
OracleDatabaseProvider is a concrete implementation of AbstractDatabaseProvider
designed to facilitate interactions with an Oracle database.
It uses a DefaultTypeConverter for handling type conversions between
database values and Java data types.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.litebridgedb.db.spi.impl.AbstractDatabaseProvider
AbstractDatabaseProvider.BindValue, AbstractDatabaseProvider.PreparedRow, AbstractDatabaseProvider.PreparedSql -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidappendLimitClause(Limit limit, StringBuilder sql) protected StringcreateAlias(String alias) protected StringcreateColumnIdentifier(Column column, boolean includeColumnAlias, @Nullable Select select) protected StringcreateSequenceNextValueForDirectInsert(String sequence) Generate a SQL fragment to retrieve the next value from a sequence for direct use in an INSERT or UPDATE statement, e.g. to generate "INSERT INTO LB.ACCOUNT(ACCOUNT_ID, ACCOUNT_NAME) VALUES (NEXT VALUE FOR sequence_name, ?)"protected Map<ColumnMetaData, Object> extractGeneratedKeys(TableMetaData tableMetaData, PreparedStatement preparedStatement) protected org.slf4j.LoggerReturn the logger instance for this database provider.Methods inherited from class org.litebridgedb.db.spi.impl.AbstractDatabaseProvider
appendTable, appendTable, appendTable, createCondition, createJoin, createMathOperation, createPreparedStatementUsingConnection, delete, ensureColumnMetaData, executeSqlInsert, executeSqlUpdate, fetchTableMetaData, getColumnNames, getGeneratedPrimaryKeyColumns, getPrimaryKeyColumnNames, getTypeConverter, insert, mapOperator, prepareRow, prepareSql, prepareSql, prepareSql, prepareStatement, quoteIdentifier, select, tableMetaData, toSql, transformAlias, update, verifySchemaAndTableExists
-
Constructor Details
-
OracleDatabaseProvider
public OracleDatabaseProvider()
-
-
Method Details
-
createColumnIdentifier
protected String createColumnIdentifier(Column column, boolean includeColumnAlias, @Nullable Select select) - Overrides:
createColumnIdentifierin classAbstractDatabaseProvider
-
createSequenceNextValueForDirectInsert
Description copied from class:AbstractDatabaseProviderGenerate a SQL fragment to retrieve the next value from a sequence for direct use in an INSERT or UPDATE statement, e.g. to generate "INSERT INTO LB.ACCOUNT(ACCOUNT_ID, ACCOUNT_NAME) VALUES (NEXT VALUE FOR sequence_name, ?)", this method returns "NEXT VALUE FOR sequence_name".- Overrides:
createSequenceNextValueForDirectInsertin classAbstractDatabaseProvider- Parameters:
sequence- the name of the database sequence to generate the next value from- Returns:
- a formatted SQL string representing the next sequence value for direct insertion
-
createAlias
- Overrides:
createAliasin classAbstractDatabaseProvider
-
appendLimitClause
- Overrides:
appendLimitClausein classAbstractDatabaseProvider
-
extractGeneratedKeys
protected Map<ColumnMetaData,Object> extractGeneratedKeys(TableMetaData tableMetaData, PreparedStatement preparedStatement) throws SQLException - Overrides:
extractGeneratedKeysin classAbstractDatabaseProvider- Throws:
SQLException
-
getLogger
protected org.slf4j.Logger getLogger()Description copied from class:AbstractDatabaseProviderReturn the logger instance for this database provider.- Overrides:
getLoggerin classAbstractDatabaseProvider- Returns:
- the logger instance
-