Package oracle.jdbc

Interface AdditionalDatabaseMetaData

  • All Superinterfaces:
    java.sql.DatabaseMetaData, java.sql.Wrapper
    All Known Implementing Classes:
    OracleDatabaseMetaData

    public interface AdditionalDatabaseMetaData
    extends java.sql.DatabaseMetaData
    This interface defines additional Oracle specific methods for DatabaseMetaData. Rightfully it should be called OracleDatabaseMetaData, but that name is already used by the class that implements DatabaseMetaData for the Oracle JDBC drivers. That class implements this interface. Best practice is to use the standard Java interface, java.sql.DatabaseMetaData. If your app requires access to the additional Oracle specific information then cast the result of getDatabaseMetaData to this type, AdditionalDatabaseMetaData. Use of the class OracleDatabaseMetaData is not recommended and will cause ClassCastException if used with some new Oracle JDBC features.
    Since:
    11.2.0.3.0
    • Field Summary

      • Fields inherited from interface java.sql.DatabaseMetaData

        attributeNoNulls, attributeNullable, attributeNullableUnknown, bestRowNotPseudo, bestRowPseudo, bestRowSession, bestRowTemporary, bestRowTransaction, bestRowUnknown, columnNoNulls, columnNullable, columnNullableUnknown, functionColumnIn, functionColumnInOut, functionColumnOut, functionColumnResult, functionColumnUnknown, functionNoNulls, functionNoTable, functionNullable, functionNullableUnknown, functionResultUnknown, functionReturn, functionReturnsTable, importedKeyCascade, importedKeyInitiallyDeferred, importedKeyInitiallyImmediate, importedKeyNoAction, importedKeyNotDeferrable, importedKeyRestrict, importedKeySetDefault, importedKeySetNull, procedureColumnIn, procedureColumnInOut, procedureColumnOut, procedureColumnResult, procedureColumnReturn, procedureColumnUnknown, procedureNoNulls, procedureNoResult, procedureNullable, procedureNullableUnknown, procedureResultUnknown, procedureReturnsResult, sqlStateSQL, sqlStateSQL99, sqlStateXOpen, tableIndexClustered, tableIndexHashed, tableIndexOther, tableIndexStatistic, typeNoNulls, typeNullable, typeNullableUnknown, typePredBasic, typePredChar, typePredNone, typeSearchable, versionColumnNotPseudo, versionColumnPseudo, versionColumnUnknown
    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      java.lang.String getAccessBanner()
      Returns the access banner on this connection.
      default java.util.Map<java.lang.String,​java.lang.String> getAnnotations​(java.lang.String objectName, java.lang.String domainName, java.lang.String domainOwner)
      Since 23ai, annotations can be specified to schema objects such as tables, views and columns.
      default java.util.Map<java.lang.String,​java.lang.String> getAnnotations​(java.lang.String objectName, java.lang.String columnName, java.lang.String domainName, java.lang.String domainOwner)
      Since 23ai, annotations can be specified to schema objects such as tables, views and columns.
      java.lang.String getAuditBanner()
      Returns the audit banner on this connection.
      java.sql.ResultSet getJsonSchema​(java.lang.String viewName)
      Gets the schema of the JSON Duality view
      long getLobMaxLength()
      The max size of a lob on the server for this connection.
      OracleTypeMetaData getOracleTypeMetaData​(java.lang.String sqlTypeName)
      Return the type metadata for a named type.
      boolean isDualityView​(java.lang.String viewName)
      Checks whether the view mentioned exists and is a JSON Duality view
      • Methods inherited from interface java.sql.DatabaseMetaData

        allProceduresAreCallable, allTablesAreSelectable, autoCommitFailureClosesAllResultSets, dataDefinitionCausesTransactionCommit, dataDefinitionIgnoredInTransactions, deletesAreDetected, doesMaxRowSizeIncludeBlobs, generatedKeyAlwaysReturned, getAttributes, getBestRowIdentifier, getCatalogs, getCatalogSeparator, getCatalogTerm, getClientInfoProperties, getColumnPrivileges, getColumns, getConnection, getCrossReference, getDatabaseMajorVersion, getDatabaseMinorVersion, getDatabaseProductName, getDatabaseProductVersion, getDefaultTransactionIsolation, getDriverMajorVersion, getDriverMinorVersion, getDriverName, getDriverVersion, getExportedKeys, getExtraNameCharacters, getFunctionColumns, getFunctions, getIdentifierQuoteString, getImportedKeys, getIndexInfo, getJDBCMajorVersion, getJDBCMinorVersion, getMaxBinaryLiteralLength, getMaxCatalogNameLength, getMaxCharLiteralLength, getMaxColumnNameLength, getMaxColumnsInGroupBy, getMaxColumnsInIndex, getMaxColumnsInOrderBy, getMaxColumnsInSelect, getMaxColumnsInTable, getMaxConnections, getMaxCursorNameLength, getMaxIndexLength, getMaxLogicalLobSize, getMaxProcedureNameLength, getMaxRowSize, getMaxSchemaNameLength, getMaxStatementLength, getMaxStatements, getMaxTableNameLength, getMaxTablesInSelect, getMaxUserNameLength, getNumericFunctions, getPrimaryKeys, getProcedureColumns, getProcedures, getProcedureTerm, getPseudoColumns, getResultSetHoldability, getRowIdLifetime, getSchemas, getSchemas, getSchemaTerm, getSearchStringEscape, getSQLKeywords, getSQLStateType, getStringFunctions, getSuperTables, getSuperTypes, getSystemFunctions, getTablePrivileges, getTables, getTableTypes, getTimeDateFunctions, getTypeInfo, getUDTs, getURL, getUserName, getVersionColumns, insertsAreDetected, isCatalogAtStart, isReadOnly, locatorsUpdateCopy, nullPlusNonNullIsNull, nullsAreSortedAtEnd, nullsAreSortedAtStart, nullsAreSortedHigh, nullsAreSortedLow, othersDeletesAreVisible, othersInsertsAreVisible, othersUpdatesAreVisible, ownDeletesAreVisible, ownInsertsAreVisible, ownUpdatesAreVisible, storesLowerCaseIdentifiers, storesLowerCaseQuotedIdentifiers, storesMixedCaseIdentifiers, storesMixedCaseQuotedIdentifiers, storesUpperCaseIdentifiers, storesUpperCaseQuotedIdentifiers, supportsAlterTableWithAddColumn, supportsAlterTableWithDropColumn, supportsANSI92EntryLevelSQL, supportsANSI92FullSQL, supportsANSI92IntermediateSQL, supportsBatchUpdates, supportsCatalogsInDataManipulation, supportsCatalogsInIndexDefinitions, supportsCatalogsInPrivilegeDefinitions, supportsCatalogsInProcedureCalls, supportsCatalogsInTableDefinitions, supportsColumnAliasing, supportsConvert, supportsConvert, supportsCoreSQLGrammar, supportsCorrelatedSubqueries, supportsDataDefinitionAndDataManipulationTransactions, supportsDataManipulationTransactionsOnly, supportsDifferentTableCorrelationNames, supportsExpressionsInOrderBy, supportsExtendedSQLGrammar, supportsFullOuterJoins, supportsGetGeneratedKeys, supportsGroupBy, supportsGroupByBeyondSelect, supportsGroupByUnrelated, supportsIntegrityEnhancementFacility, supportsLikeEscapeClause, supportsLimitedOuterJoins, supportsMinimumSQLGrammar, supportsMixedCaseIdentifiers, supportsMixedCaseQuotedIdentifiers, supportsMultipleOpenResults, supportsMultipleResultSets, supportsMultipleTransactions, supportsNamedParameters, supportsNonNullableColumns, supportsOpenCursorsAcrossCommit, supportsOpenCursorsAcrossRollback, supportsOpenStatementsAcrossCommit, supportsOpenStatementsAcrossRollback, supportsOrderByUnrelated, supportsOuterJoins, supportsPositionedDelete, supportsPositionedUpdate, supportsRefCursors, supportsResultSetConcurrency, supportsResultSetHoldability, supportsResultSetType, supportsSavepoints, supportsSchemasInDataManipulation, supportsSchemasInIndexDefinitions, supportsSchemasInPrivilegeDefinitions, supportsSchemasInProcedureCalls, supportsSchemasInTableDefinitions, supportsSelectForUpdate, supportsSharding, supportsStatementPooling, supportsStoredFunctionsUsingCallSyntax, supportsStoredProcedures, supportsSubqueriesInComparisons, supportsSubqueriesInExists, supportsSubqueriesInIns, supportsSubqueriesInQuantifieds, supportsTableCorrelationNames, supportsTransactionIsolationLevel, supportsTransactions, supportsUnion, supportsUnionAll, updatesAreDetected, usesLocalFilePerTable, usesLocalFiles
      • Methods inherited from interface java.sql.Wrapper

        isWrapperFor, unwrap
    • Method Detail

      • getOracleTypeMetaData

        OracleTypeMetaData getOracleTypeMetaData​(java.lang.String sqlTypeName)
                                          throws java.sql.SQLException
        Return the type metadata for a named type. Use this instead of the various Descriptor classes and methods. Use of the Descriptor classes and methods such as oracle.sql.TypeDescriptor, is not recommended and will cause ClassCastException if used with some new Oracle JDBC features.
        Parameters:
        sqlTypeName - the name of the type
        Returns:
        the metadata for the type
        Throws:
        java.sql.SQLException - if the type does not exist or some other error occurs
        Since:
        11.2.0.3.0
      • getLobMaxLength

        long getLobMaxLength()
                      throws java.sql.SQLException
        The max size of a lob on the server for this connection. Note that the actual size available for a particular lob will depend on the specific storage allocation.
        Returns:
        Max size of lob.
        Throws:
        java.sql.SQLException
        Since:
        11.2.0.3.0
      • getAuditBanner

        java.lang.String getAuditBanner()
                                 throws java.sql.SQLException
        Returns the audit banner on this connection.
        Returns:
        String containing the audit banner or a null String if there isn't one available on this connection.
        Throws:
        java.sql.SQLException - if there is any issue while retrieving the banner
      • getAccessBanner

        java.lang.String getAccessBanner()
                                  throws java.sql.SQLException
        Returns the access banner on this connection.
        Returns:
        String containing the access banner or a null String if there isn't one available on this connection.
        Throws:
        java.sql.SQLException - if there is any issue while retrieving the banner
      • getAnnotations

        default java.util.Map<java.lang.String,​java.lang.String> getAnnotations​(java.lang.String objectName,
                                                                                      java.lang.String columnName,
                                                                                      java.lang.String domainName,
                                                                                      java.lang.String domainOwner)
                                                                               throws java.sql.SQLException
        Since 23ai, annotations can be specified to schema objects such as tables, views and columns. Annotations is a mechanism to store application metadata centrally in the database. Annotations can be specified at creation time or at modification time. An individual annotation has a name and an optional value. Both the name and the value are freeform text fields. A schema object can have multiple annotations. This method returns annotation associated with the specified column. Returns null if there are no annotation for the given column.
        Parameters:
        objectName - Table / View Name
        columnName - Name of the column
        domainName - Domain Name [Optional, can be null]
        domainOwner - Domain Owner [Optional, can be null]
        Throws:
        java.sql.SQLException
        See Also:
        OracleResultSetMetaData.getAnnotations(int)
      • getAnnotations

        default java.util.Map<java.lang.String,​java.lang.String> getAnnotations​(java.lang.String objectName,
                                                                                      java.lang.String domainName,
                                                                                      java.lang.String domainOwner)
                                                                               throws java.sql.SQLException
        Since 23ai, annotations can be specified to schema objects such as tables, views and columns. Annotations is a mechanism to store application metadata centrally in the database. Annotations can be specified at creation time or at modification time. An individual annotation has a name and an optional value. Both the name and the value are freeform text fields. A schema object can have multiple annotations. This method returns annotation associated with the specified table or view. Returns null if there are no annotation for the given object.
        Parameters:
        objectName - Table / View Name
        domainName - Domain Name [Optional, can be null]
        domainOwner - Domain Owner [Optional, can be null]
        Throws:
        java.sql.SQLException
      • isDualityView

        boolean isDualityView​(java.lang.String viewName)
                       throws java.sql.SQLException
        Checks whether the view mentioned exists and is a JSON Duality view
        Parameters:
        viewName - the view that needs to be checked
        Returns:
        true if the view exists and is a JSON Duality view, false otherwise
        Throws:
        java.sql.SQLException
      • getJsonSchema

        java.sql.ResultSet getJsonSchema​(java.lang.String viewName)
                                  throws java.sql.SQLException
        Gets the schema of the JSON Duality view
        Parameters:
        viewName - the view whose schema is to be extracted
        Returns:
        Schema of the JSON Duality view if exists
        Throws:
        java.sql.SQLException - if the json duality view does not exist