public class OracleConnection extends JdbcConnection
JdbcConnection.BlockingMultiResultSetConsumer, JdbcConnection.BlockingResultSetConsumer, JdbcConnection.CallPreparer, JdbcConnection.ConnectionFactory, JdbcConnection.MultiResultSetConsumer, JdbcConnection.Operations, JdbcConnection.ParameterResultSetConsumer, JdbcConnection.ResultSetConsumer, JdbcConnection.ResultSetExtractor<T>, JdbcConnection.ResultSetMapper<T>, JdbcConnection.StatementFactory, JdbcConnection.StatementPreparer| Modifier and Type | Field and Description |
|---|---|
private OracleDatabaseVersion |
databaseVersion
The database version.
|
private static org.slf4j.Logger |
LOGGER |
private static int |
ORACLE_UNSET_SCALE
Returned by column metadata in Oracle if no scale is set;
|
private static Pattern |
SYS_NC_PATTERN
Pattern to identify system generated indices and column names.
|
private static Field |
URL
A field for the raw jdbc url.
|
| Constructor and Description |
|---|
OracleConnection(Configuration config,
Supplier<ClassLoader> classLoaderSupplier) |
| Modifier and Type | Method and Description |
|---|---|
static String |
connectionString(Configuration config) |
OracleConnection |
executeLegacy(JdbcConnection.Operations operations) |
OracleConnection |
executeLegacy(String... sqlStatements) |
protected Set<TableId> |
getAllTableIds(String catalogName)
Retrieves all
TableId in a given database catalog, filtering certain ids that
should be omitted from the returned set such as special spatial tables and index-organized
tables. |
OracleDatabaseVersion |
getOracleVersion() |
private ResultSet |
getTableColumnsInfo(String schemaNamePattern,
String tableName) |
boolean |
getTablenameCaseInsensitivity(OracleConnectorConfig connectorConfig)
Resolve the table name case insensitivity used by the schema based on the following rules:
If option is provided in connector configuration, it will be used.
Otherwise resolved by database version where Oracle 11 will be
true; otherwise false.
|
protected boolean |
isTableUniqueIndexIncluded(String indexName,
String columnName) |
private void |
overrideOracleSpecificColumnTypes(Tables tables,
TableId tableId,
TableId tableIdWithCatalog) |
void |
readSchema(Tables tables,
String databaseCatalog,
String schemaNamePattern,
Tables.TableFilter tableFilter,
Tables.ColumnNameFilter columnFilter,
boolean removeTablesNotFoundInJdbc) |
void |
readSchemaForCapturedTables(Tables tables,
String databaseCatalog,
String schemaNamePattern,
Tables.ColumnNameFilter columnFilter,
boolean removeTablesNotFoundInJdbc,
Set<TableId> capturedTables) |
Set<TableId> |
readTableNames(String databaseCatalog,
String schemaNamePattern,
String tableNamePattern,
String[] tableTypes) |
List<String> |
readTableUniqueIndices(DatabaseMetaData metadata,
TableId id) |
void |
resetSessionToCdb() |
private static JdbcConnection.ConnectionFactory |
resolveConnectionFactory(Configuration config) |
private OracleDatabaseVersion |
resolveOracleDatabaseVersion() |
void |
setSessionToPdb(String pdbName) |
call, close, commit, config, connect, connection, connection, connectionString, database, execute, execute, executeWithoutCommitting, getDefaultValue, isConnected, isNullable, parseSqlStatementString, patternBasedFactory, patternBasedFactory, prepareQuery, prepareQuery, prepareQuery, prepareQuery, prepareQueryAndMap, prepareQueryWithBlockingConsumer, prepareUpdate, print, print, query, query, queryAndMap, queryAndMap, querySingleValue, queryWithBlockingConsumer, readAllCatalogNames, readAllSchemaNames, readAllTableNames, readPrimaryKeyNames, readPrimaryKeyOrUniqueIndexNames, readTableColumn, resolveJdbcType, resolveNativeType, rollback, setAutoCommit, singleResultMapper, tableTypes, usernameprivate static final org.slf4j.Logger LOGGER
private static final int ORACLE_UNSET_SCALE
private static final Pattern SYS_NC_PATTERN
private static final Field URL
private final OracleDatabaseVersion databaseVersion
public OracleConnection(Configuration config, Supplier<ClassLoader> classLoaderSupplier)
public void setSessionToPdb(String pdbName)
public void resetSessionToCdb()
public OracleDatabaseVersion getOracleVersion()
private OracleDatabaseVersion resolveOracleDatabaseVersion()
public Set<TableId> readTableNames(String databaseCatalog, String schemaNamePattern, String tableNamePattern, String[] tableTypes) throws SQLException
readTableNames in class JdbcConnectionSQLExceptionprotected Set<TableId> getAllTableIds(String catalogName) throws SQLException
TableId in a given database catalog, filtering certain ids that
should be omitted from the returned set such as special spatial tables and index-organized
tables.catalogName - the catalog/database nameSQLException - if a database exception occurredprivate ResultSet getTableColumnsInfo(String schemaNamePattern, String tableName) throws SQLException
SQLExceptionpublic void readSchemaForCapturedTables(Tables tables, String databaseCatalog, String schemaNamePattern, Tables.ColumnNameFilter columnFilter, boolean removeTablesNotFoundInJdbc, Set<TableId> capturedTables) throws SQLException
SQLExceptionpublic void readSchema(Tables tables, String databaseCatalog, String schemaNamePattern, Tables.TableFilter tableFilter, Tables.ColumnNameFilter columnFilter, boolean removeTablesNotFoundInJdbc) throws SQLException
readSchema in class JdbcConnectionSQLExceptionpublic List<String> readTableUniqueIndices(DatabaseMetaData metadata, TableId id) throws SQLException
readTableUniqueIndices in class JdbcConnectionSQLExceptionprotected boolean isTableUniqueIndexIncluded(String indexName, String columnName)
isTableUniqueIndexIncluded in class JdbcConnectionprivate void overrideOracleSpecificColumnTypes(Tables tables, TableId tableId, TableId tableIdWithCatalog)
public boolean getTablenameCaseInsensitivity(OracleConnectorConfig connectorConfig)
true; otherwise false.connectorConfig - the connector configurationpublic OracleConnection executeLegacy(String... sqlStatements) throws SQLException
SQLExceptionpublic OracleConnection executeLegacy(JdbcConnection.Operations operations) throws SQLException
SQLExceptionpublic static String connectionString(Configuration config)
private static JdbcConnection.ConnectionFactory resolveConnectionFactory(Configuration config)
Copyright © 2021 JBoss by Red Hat. All rights reserved.