All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class oracle.jdbc.driver.OracleDatabaseMetaData

java.lang.Object
   |
   +----oracle.jdbc.driver.OracleDatabaseMetaData

public class OracleDatabaseMetaData
extends Object
implements DatabaseMetaData
The OracleDatabaseMetaData class implements the JDBC 1.0 DatabaseMetaData interface.


Constructor Index

 o OracleDatabaseMetaData(OracleConnection)

Method Index

 o allProceduresAreCallable()
Can all the procedures returned by getProcedures be called by the current user?
 o allTablesAreSelectable()
Can all the tables returned by getTable be SELECTed by the current user?
 o dataDefinitionCausesTransactionCommit()
Does a data definition statement within a transaction force the transaction to commit?
 o dataDefinitionIgnoredInTransactions()
Is a data definition statement within a transaction ignored?
 o deletesAreDetected(int)
Implements JDBC 2.0 DatabaseMetaData.deletesAreDetected.
 o doesMaxRowSizeIncludeBlobs()
Did getMaxRowSize() include LONGVARCHAR and LONGVARBINARY blobs?
 o getBestRowIdentifier(String, String, String, int, boolean)
Get a description of a table's optimal set of columns that uniquely identifies a row.
 o getCatalogs()
Get the catalog names available in this database.
 o getCatalogSeparator()
What's the separator between catalog and table name?
 o getCatalogTerm()
What's the database vendor's preferred term for "catalog"?
 o getColumnPrivileges(String, String, String, String)
Get a description of the access rights for a table's columns.
 o getColumns(String, String, String, String)
Get a description of table columns available in a catalog.
 o getConnection()
Implements JDBC 2.0 DatabaseMetaData.getConnection.
 o getCrossReference(String, String, String, String, String, String)
Get a description of the foreign key columns in the foreign key table that reference the primary key columns of the primary key table (describe how one table imports another's key.) This should normally return a single foreign key/primary key pair (most tables only import a foreign key from a table once.) They are ordered by FKTABLE_CAT, FKTABLE_SCHEM, FKTABLE_NAME, and KEY_SEQ.
 o getDatabaseProductName()
What's the name of this database product?
 o getDatabaseProductVersion()
What's the version of this database product?
 o getDefaultTransactionIsolation()
What's the database's default transaction isolation level? The values are defined in java.sql.Connection.
 o getDriverMajorVersion()
What's this JDBC driver's major version number?
 o getDriverMajorVersionInfo()
What's this JDBC driver's major version number?
 o getDriverMinorVersion()
What's this JDBC driver's minor version number?
 o getDriverMinorVersionInfo()
What's this JDBC driver's minor version number?
 o getDriverName()
What's the name of this JDBC driver?
 o getDriverNameInfo()
What's the name of this JDBC driver?
 o getDriverVersion()
What's the version of this JDBC driver?
 o getDriverVersionInfo()
What's the version of this JDBC driver?
 o getExportedKeys(String, String, String)
Get a description of a foreign key columns that reference a table's primary key columns (the foreign keys exported by a table).
 o getExtraNameCharacters()
Get all the "extra" characters that can be used in unquoted identifier names (those beyond a-z, 0-9 and _).
 o getIdentifierQuoteString()
What's the string used to quote SQL identifiers? This returns a space " " if identifier quoting isn't supported.
 o getImportedKeys(String, String, String)
Get a description of the primary key columns that are referenced by a table's foreign key columns (the primary keys imported by a table).
 o getIndexInfo(String, String, String, boolean, boolean)
Get a description of a table's indices and statistics.
 o getMaxBinaryLiteralLength()
How many hex characters can you have in an inline binary literal?
 o getMaxCatalogNameLength()
What's the maximum length of a catalog name?
 o getMaxCharLiteralLength()
What's the max length for a character literal?
 o getMaxColumnNameLength()
What's the limit on column name length?
 o getMaxColumnsInGroupBy()
What's the maximum number of columns in a "GROUP BY" clause?
 o getMaxColumnsInIndex()
What's the maximum number of columns allowed in an index?
 o getMaxColumnsInOrderBy()
What's the maximum number of columns in an "ORDER BY" clause?
 o getMaxColumnsInSelect()
What's the maximum number of columns in a "SELECT" list?
 o getMaxColumnsInTable()
What's maximum number of columns in a table?
 o getMaxConnections()
How many active connections can we have at a time to this database?
 o getMaxCursorNameLength()
What's the maximum cursor name length?
 o getMaxIndexLength()
What's the maximum length of an index (in bytes)?
 o getMaxProcedureNameLength()
What's the maximum length of a procedure name?
 o getMaxRowSize()
What's the maximum length of a single row?
 o getMaxSchemaNameLength()
What's the maximum length allowed for a schema name?
 o getMaxStatementLength()
What's the maximum length of a SQL statement?
 o getMaxStatements()
How many active statements can we have open at one time to this database?
 o getMaxTableNameLength()
What's the maximum length of a table name?
 o getMaxTablesInSelect()
What's the maximum number of tables in a SELECT?
 o getMaxUserNameLength()
What's the maximum length of a user name?
 o getNumericFunctions()
Get a comma separated list of math functions.
 o getPrimaryKeys(String, String, String)
Get a description of a table's primary key columns.
 o getProcedureColumns(String, String, String, String)
Get a description of a catalog's stored procedure parameters and result columns.
 o getProcedures(String, String, String)
Get a description of stored procedures available in a catalog.
 o getProcedureTerm()
What's the database vendor's preferred term for "procedure"?
 o getSchemas()
Get the schema names available in this database.
 o getSchemaTerm()
What's the database vendor's preferred term for "schema"?
 o getSearchStringEscape()
This is the string that can be used to escape '_' or '%' in the string pattern style catalog search parameters.
 o getSQLKeywords()
Get a comma separated list of all a database's SQL keywords that are NOT also SQL92 keywords.
 o getStringFunctions()
Get a comma separated list of string functions.
 o getSystemFunctions()
Get a comma separated list of system functions.
 o getTablePrivileges(String, String, String)
Get a description of the access rights for each table available in a catalog.
 o getTables(String, String, String, String[])
Get a description of tables available in a catalog.
 o getTableTypes()
Get the table types available in this database.
 o getTimeDateFunctions()
Get a comma separated list of time and date functions.
 o getTypeInfo()
Get a description of all the standard SQL types supported by this database.
 o getUDTs(String, String, String, int[])
Implements JDBC 2.0 DatabaseMetaData::getUDTs.
 o getURL()
What's the url for this database?
 o getUserName()
What's our user name as known to the database?
 o getVersionColumns(String, String, String)
Get a description of a table's columns that are automatically updated when any value in a row is updated.
 o insertsAreDetected(int)
Implements JDBC 2.0 DatabaseMetaData.insertsAreDetected.
 o isCatalogAtStart()
Does a catalog appear at the start of a qualified table name? (Otherwise it appears at the end)
 o isReadOnly()
Is the database in read-only mode?
 o nullPlusNonNullIsNull()
Are concatenations between NULL and non-NULL values NULL? A JDBC compliant driver always returns true.
 o nullsAreSortedAtEnd()
Are NULL values sorted at the end regardless of sort order?
 o nullsAreSortedAtStart()
Are NULL values sorted at the start regardless of sort order?
 o nullsAreSortedHigh()
Are NULL values sorted high?
 o nullsAreSortedLow()
Are NULL values sorted low?
 o othersDeletesAreVisible(int)
Implements JDBC 2.0 DatabaseMetaData..
 o othersInsertsAreVisible(int)
Implements JDBC 2.0 DatabaseMetaData.othersInsertsAreVisible.
 o othersUpdatesAreVisible(int)
Implements JDBC 2.0 DatabaseMetaData..
 o ownDeletesAreVisible(int)
Implements JDBC 2.0 DatabaseMetaData.ownDeletesAreVisible.
 o ownInsertsAreVisible(int)
Implements JDBC 2.0 DatabaseMetaData.ownInsertsAreVisible.
 o ownUpdatesAreVisible(int)
Implements JDBC 2.0 DatabaseMetaData.ownUpdatesAreVisible.
 o storesLowerCaseIdentifiers()
Does the database treat mixed case unquoted SQL identifiers as case insensitive and store them in lower case?
 o storesLowerCaseQuotedIdentifiers()
Does the database treat mixed case quoted SQL identifiers as case insensitive and store them in lower case?
 o storesMixedCaseIdentifiers()
Does the database treat mixed case unquoted SQL identifiers as case insensitive and store them in mixed case?
 o storesMixedCaseQuotedIdentifiers()
Does the database treat mixed case quoted SQL identifiers as case insensitive and store them in mixed case?
 o storesUpperCaseIdentifiers()
Does the database treat mixed case unquoted SQL identifiers as case insensitive and store them in upper case?
 o storesUpperCaseQuotedIdentifiers()
Does the database treat mixed case quoted SQL identifiers as case insensitive and store them in upper case?
 o supportsAlterTableWithAddColumn()
Is "ALTER TABLE" with add column supported?
 o supportsAlterTableWithDropColumn()
Is "ALTER TABLE" with drop column supported?
 o supportsANSI92EntryLevelSQL()
Is the ANSI92 entry level SQL grammar supported? All JDBC compliant drivers must return true.
 o supportsANSI92FullSQL()
Is the ANSI92 full SQL grammar supported?
 o supportsANSI92IntermediateSQL()
Is the ANSI92 intermediate SQL grammar supported?
 o supportsBatchUpdates()
Implements JDBC 2.0 DatabaseMetaData::supportBatchUpdates.
 o supportsCatalogsInDataManipulation()
Can a catalog name be used in a data manipulation statement?
 o supportsCatalogsInIndexDefinitions()
Can a catalog name be used in a index definition statement?
 o supportsCatalogsInPrivilegeDefinitions()
Can a catalog name be used in a privilege definition statement?
 o supportsCatalogsInProcedureCalls()
Can a catalog name be used in a procedure call statement?
 o supportsCatalogsInTableDefinitions()
Can a catalog name be used in a table definition statement?
 o supportsColumnAliasing()
Is column aliasing supported?

If so, the SQL AS clause can be used to provide names for computed columns or to provide alias names for columns as required.

 o supportsConvert()
Is the CONVERT function between SQL types supported?
 o supportsConvert(int, int)
Is CONVERT between the given SQL types supported?
 o supportsCoreSQLGrammar()
Is the ODBC Core SQL grammar supported?
 o supportsCorrelatedSubqueries()
Are correlated subqueries supported? A JDBC compliant driver always returns true.
 o supportsDataDefinitionAndDataManipulationTransactions()
Are both data definition and data manipulation statements within a transaction supported?
 o supportsDataManipulationTransactionsOnly()
Are only data manipulation statements within a transaction supported?
 o supportsDifferentTableCorrelationNames()
If table correlation names are supported, are they restricted to be different from the names of the tables?
 o supportsExpressionsInOrderBy()
Are expressions in "ORDER BY" lists supported?
 o supportsExtendedSQLGrammar()
Is the ODBC Extended SQL grammar supported?
 o supportsFullOuterJoins()
Are full nested outer joins supported?
 o supportsGroupBy()
Is some form of "GROUP BY" clause supported?
 o supportsGroupByBeyondSelect()
Can a "GROUP BY" clause add columns not in the SELECT provided it specifies all the columns in the SELECT?
 o supportsGroupByUnrelated()
Can a "GROUP BY" clause use columns not in the SELECT?
 o supportsIntegrityEnhancementFacility()
Is the SQL Integrity Enhancement Facility supported?
 o supportsLikeEscapeClause()
Is the escape character in "LIKE" clauses supported? A JDBC compliant driver always returns true.
 o supportsLimitedOuterJoins()
Is there limited support for outer joins? (This will be true if supportFullOuterJoins is true.)
 o supportsMinimumSQLGrammar()
Is the ODBC Minimum SQL grammar supported? All JDBC compliant drivers must return true.
 o supportsMixedCaseIdentifiers()
Does the database treat mixed case unquoted SQL identifiers as case sensitive and as a result store them in mixed case? A JDBC compliant driver will always return false.
 o supportsMixedCaseQuotedIdentifiers()
Does the database treat mixed case quoted SQL identifiers as case sensitive and as a result store them in mixed case? A JDBC compliant driver will always return false.
 o supportsMultipleResultSets()
Are multiple ResultSets from a single execute supported?
 o supportsMultipleTransactions()
Can we have multiple transactions open at once (on different connections)?
 o supportsNonNullableColumns()
Can columns be defined as non-nullable? A JDBC compliant driver always returns true.
 o supportsOpenCursorsAcrossCommit()
Can cursors remain open across commits?
 o supportsOpenCursorsAcrossRollback()
Can cursors remain open across rollbacks?
 o supportsOpenStatementsAcrossCommit()
Can statements remain open across commits?
 o supportsOpenStatementsAcrossRollback()
Can statements remain open across rollbacks?
 o supportsOrderByUnrelated()
Can an "ORDER BY" clause use columns not in the SELECT?
 o supportsOuterJoins()
Is some form of outer join supported?
 o supportsPositionedDelete()
Is positioned DELETE supported?
 o supportsPositionedUpdate()
Is positioned UPDATE supported?
 o supportsResultSetConcurrency(int, int)
Implements JDBC 2.0 DatabaseMetaData.supportsResultSetConcurrency.
 o supportsResultSetType(int)
Implements JDBC 2.0 DatabaseMetaData.supportsResultSetType.
 o supportsSchemasInDataManipulation()
Can a schema name be used in a data manipulation statement?
 o supportsSchemasInIndexDefinitions()
Can a schema name be used in an index definition statement?
 o supportsSchemasInPrivilegeDefinitions()
Can a schema name be used in a privilege definition statement?
 o supportsSchemasInProcedureCalls()
Can a schema name be used in a procedure call statement?
 o supportsSchemasInTableDefinitions()
Can a schema name be used in a table definition statement?
 o supportsSelectForUpdate()
Is SELECT for UPDATE supported?
 o supportsStoredProcedures()
Are stored procedure calls using the stored procedure escape syntax supported?
 o supportsSubqueriesInComparisons()
Are subqueries in comparison expressions supported? A JDBC compliant driver always returns true.
 o supportsSubqueriesInExists()
Are subqueries in exists expressions supported? A JDBC compliant driver always returns true.
 o supportsSubqueriesInIns()
Are subqueries in "in" statements supported? A JDBC compliant driver always returns true.
 o supportsSubqueriesInQuantifieds()
Are subqueries in quantified expressions supported? A JDBC compliant driver always returns true.
 o supportsTableCorrelationNames()
Are table correlation names supported? A JDBC compliant driver always returns true.
 o supportsTransactionIsolationLevel(int)
Does the database support the given transaction isolation level?
 o supportsTransactions()
Are transactions supported? If not, commit is a noop and the isolation level is TRANSACTION_NONE.
 o supportsUnion()
Is SQL UNION supported?
 o supportsUnionAll()
Is SQL UNION ALL supported?
 o updatesAreDetected(int)
Implements JDBC 2.0 DatabaseMetaData.updatesAreDetected.
 o usesLocalFilePerTable()
Does the database use a file for each table?
 o usesLocalFiles()
Does the database store tables in a local file?

Constructors

 o OracleDatabaseMetaData
 public OracleDatabaseMetaData(OracleConnection conn)

Methods

 o allProceduresAreCallable
 public boolean allProceduresAreCallable() throws SQLException
Can all the procedures returned by getProcedures be called by the current user?

Returns:
true if so
 o allTablesAreSelectable
 public boolean allTablesAreSelectable() throws SQLException
Can all the tables returned by getTable be SELECTed by the current user?

Returns:
true if so
 o getURL
 public String getURL() throws SQLException
What's the url for this database?

Returns:
the url or null if it can't be generated
 o getUserName
 public String getUserName() throws SQLException
What's our user name as known to the database?

Returns:
our database user name
 o isReadOnly
 public boolean isReadOnly() throws SQLException
Is the database in read-only mode?

Returns:
true if so
 o nullsAreSortedHigh
 public boolean nullsAreSortedHigh() throws SQLException
Are NULL values sorted high?

Returns:
true if so
 o nullsAreSortedLow
 public boolean nullsAreSortedLow() throws SQLException
Are NULL values sorted low?

Returns:
true if so
 o nullsAreSortedAtStart
 public boolean nullsAreSortedAtStart() throws SQLException
Are NULL values sorted at the start regardless of sort order?

Returns:
true if so
 o nullsAreSortedAtEnd
 public boolean nullsAreSortedAtEnd() throws SQLException
Are NULL values sorted at the end regardless of sort order?

Returns:
true if so
 o getDatabaseProductName
 public String getDatabaseProductName() throws SQLException
What's the name of this database product?

Returns:
database product name
 o getDatabaseProductVersion
 public String getDatabaseProductVersion() throws SQLException
What's the version of this database product?

Returns:
database version
 o getDriverName
 public String getDriverName() throws SQLException
What's the name of this JDBC driver?

Returns:
JDBC driver name
 o getDriverVersion
 public String getDriverVersion() throws SQLException
What's the version of this JDBC driver?

Returns:
JDBC driver version
 o getDriverMajorVersion
 public int getDriverMajorVersion()
What's this JDBC driver's major version number?

Returns:
JDBC driver major version
 o getDriverMinorVersion
 public int getDriverMinorVersion()
What's this JDBC driver's minor version number?

Returns:
JDBC driver minor version number
 o usesLocalFiles
 public boolean usesLocalFiles() throws SQLException
Does the database store tables in a local file?

Returns:
true if so
 o usesLocalFilePerTable
 public boolean usesLocalFilePerTable() throws SQLException
Does the database use a file for each table?

Returns:
true if the database uses a local file for each table
 o supportsMixedCaseIdentifiers
 public boolean supportsMixedCaseIdentifiers() throws SQLException
Does the database treat mixed case unquoted SQL identifiers as case sensitive and as a result store them in mixed case? A JDBC compliant driver will always return false.

Returns:
true if so
 o storesUpperCaseIdentifiers
 public boolean storesUpperCaseIdentifiers() throws SQLException
Does the database treat mixed case unquoted SQL identifiers as case insensitive and store them in upper case?

Returns:
true if so
 o storesLowerCaseIdentifiers
 public boolean storesLowerCaseIdentifiers() throws SQLException
Does the database treat mixed case unquoted SQL identifiers as case insensitive and store them in lower case?

Returns:
true if so
 o storesMixedCaseIdentifiers
 public boolean storesMixedCaseIdentifiers() throws SQLException
Does the database treat mixed case unquoted SQL identifiers as case insensitive and store them in mixed case?

Returns:
true if so
 o supportsMixedCaseQuotedIdentifiers
 public boolean supportsMixedCaseQuotedIdentifiers() throws SQLException
Does the database treat mixed case quoted SQL identifiers as case sensitive and as a result store them in mixed case? A JDBC compliant driver will always return false.

Returns:
true if so
 o storesUpperCaseQuotedIdentifiers
 public boolean storesUpperCaseQuotedIdentifiers() throws SQLException
Does the database treat mixed case quoted SQL identifiers as case insensitive and store them in upper case?

Returns:
true if so
 o storesLowerCaseQuotedIdentifiers
 public boolean storesLowerCaseQuotedIdentifiers() throws SQLException
Does the database treat mixed case quoted SQL identifiers as case insensitive and store them in lower case?

Returns:
true if so
 o storesMixedCaseQuotedIdentifiers
 public boolean storesMixedCaseQuotedIdentifiers() throws SQLException
Does the database treat mixed case quoted SQL identifiers as case insensitive and store them in mixed case?

Returns:
true if so
 o getIdentifierQuoteString
 public String getIdentifierQuoteString() throws SQLException
What's the string used to quote SQL identifiers? This returns a space " " if identifier quoting isn't supported. A JDBC compliant driver always uses a double quote character.

Returns:
the quoting string
 o getSQLKeywords
 public String getSQLKeywords() throws SQLException
Get a comma separated list of all a database's SQL keywords that are NOT also SQL92 keywords.

Returns:
the list
 o getNumericFunctions
 public String getNumericFunctions() throws SQLException
Get a comma separated list of math functions.

Returns:
the list
 o getStringFunctions
 public String getStringFunctions() throws SQLException
Get a comma separated list of string functions.

Returns:
the list
 o getSystemFunctions
 public String getSystemFunctions() throws SQLException
Get a comma separated list of system functions.

Returns:
the list
 o getTimeDateFunctions
 public String getTimeDateFunctions() throws SQLException
Get a comma separated list of time and date functions.

Returns:
the list
 o getSearchStringEscape
 public String getSearchStringEscape() throws SQLException
This is the string that can be used to escape '_' or '%' in the string pattern style catalog search parameters.

The '_' character represents any single character.

The '%' character represents any sequence of zero or more characters.

Returns:
the string used to escape wildcard characters
 o getExtraNameCharacters
 public String getExtraNameCharacters() throws SQLException
Get all the "extra" characters that can be used in unquoted identifier names (those beyond a-z, 0-9 and _).

Returns:
the string containing the extra characters
 o supportsAlterTableWithAddColumn
 public boolean supportsAlterTableWithAddColumn() throws SQLException
Is "ALTER TABLE" with add column supported?

Returns:
true if so
 o supportsAlterTableWithDropColumn
 public boolean supportsAlterTableWithDropColumn() throws SQLException
Is "ALTER TABLE" with drop column supported?

Returns:
true if so
 o supportsColumnAliasing
 public boolean supportsColumnAliasing() throws SQLException
Is column aliasing supported?

If so, the SQL AS clause can be used to provide names for computed columns or to provide alias names for columns as required. A JDBC compliant driver always returns true.

Returns:
true if so
 o nullPlusNonNullIsNull
 public boolean nullPlusNonNullIsNull() throws SQLException
Are concatenations between NULL and non-NULL values NULL? A JDBC compliant driver always returns true.

Returns:
true if so
 o supportsConvert
 public boolean supportsConvert() throws SQLException
Is the CONVERT function between SQL types supported?

Returns:
true if so
 o supportsConvert
 public boolean supportsConvert(int fromType,
                                int toType) throws SQLException
Is CONVERT between the given SQL types supported?

Parameters:
fromType - the type to convert from
toType - the type to convert to
Returns:
true if so
See Also:
Types
 o supportsTableCorrelationNames
 public boolean supportsTableCorrelationNames() throws SQLException
Are table correlation names supported? A JDBC compliant driver always returns true.

Returns:
true if so
 o supportsDifferentTableCorrelationNames
 public boolean supportsDifferentTableCorrelationNames() throws SQLException
If table correlation names are supported, are they restricted to be different from the names of the tables?

Returns:
true if so
 o supportsExpressionsInOrderBy
 public boolean supportsExpressionsInOrderBy() throws SQLException
Are expressions in "ORDER BY" lists supported?

Returns:
true if so
 o supportsOrderByUnrelated
 public boolean supportsOrderByUnrelated() throws SQLException
Can an "ORDER BY" clause use columns not in the SELECT?

Returns:
true if so
 o supportsGroupBy
 public boolean supportsGroupBy() throws SQLException
Is some form of "GROUP BY" clause supported?

Returns:
true if so
 o supportsGroupByUnrelated
 public boolean supportsGroupByUnrelated() throws SQLException
Can a "GROUP BY" clause use columns not in the SELECT?

Returns:
true if so
 o supportsGroupByBeyondSelect
 public boolean supportsGroupByBeyondSelect() throws SQLException
Can a "GROUP BY" clause add columns not in the SELECT provided it specifies all the columns in the SELECT?

Returns:
true if so
 o supportsLikeEscapeClause
 public boolean supportsLikeEscapeClause() throws SQLException
Is the escape character in "LIKE" clauses supported? A JDBC compliant driver always returns true.

Returns:
true if so
 o supportsMultipleResultSets
 public boolean supportsMultipleResultSets() throws SQLException
Are multiple ResultSets from a single execute supported?

Returns:
true if so
 o supportsMultipleTransactions
 public boolean supportsMultipleTransactions() throws SQLException
Can we have multiple transactions open at once (on different connections)?

Returns:
true if so
 o supportsNonNullableColumns
 public boolean supportsNonNullableColumns() throws SQLException
Can columns be defined as non-nullable? A JDBC compliant driver always returns true.

Returns:
true if so
 o supportsMinimumSQLGrammar
 public boolean supportsMinimumSQLGrammar() throws SQLException
Is the ODBC Minimum SQL grammar supported? All JDBC compliant drivers must return true.

Returns:
true if so
 o supportsCoreSQLGrammar
 public boolean supportsCoreSQLGrammar() throws SQLException
Is the ODBC Core SQL grammar supported?

Returns:
true if so
 o supportsExtendedSQLGrammar
 public boolean supportsExtendedSQLGrammar() throws SQLException
Is the ODBC Extended SQL grammar supported?

Returns:
true if so
 o supportsANSI92EntryLevelSQL
 public boolean supportsANSI92EntryLevelSQL() throws SQLException
Is the ANSI92 entry level SQL grammar supported? All JDBC compliant drivers must return true.

Returns:
true if so
 o supportsANSI92IntermediateSQL
 public boolean supportsANSI92IntermediateSQL() throws SQLException
Is the ANSI92 intermediate SQL grammar supported?

Returns:
true if so
 o supportsANSI92FullSQL
 public boolean supportsANSI92FullSQL() throws SQLException
Is the ANSI92 full SQL grammar supported?

Returns:
true if so
 o supportsIntegrityEnhancementFacility
 public boolean supportsIntegrityEnhancementFacility() throws SQLException
Is the SQL Integrity Enhancement Facility supported?

Returns:
true if so
 o supportsOuterJoins
 public boolean supportsOuterJoins() throws SQLException
Is some form of outer join supported?

Returns:
true if so
 o supportsFullOuterJoins
 public boolean supportsFullOuterJoins() throws SQLException
Are full nested outer joins supported?

Returns:
true if so
 o supportsLimitedOuterJoins
 public boolean supportsLimitedOuterJoins() throws SQLException
Is there limited support for outer joins? (This will be true if supportFullOuterJoins is true.)

Returns:
true if so
 o getSchemaTerm
 public String getSchemaTerm() throws SQLException
What's the database vendor's preferred term for "schema"?

Returns:
the vendor term
 o getProcedureTerm
 public String getProcedureTerm() throws SQLException
What's the database vendor's preferred term for "procedure"?

Returns:
the vendor term
 o getCatalogTerm
 public String getCatalogTerm() throws SQLException
What's the database vendor's preferred term for "catalog"?

Returns:
the vendor term
 o isCatalogAtStart
 public boolean isCatalogAtStart() throws SQLException
Does a catalog appear at the start of a qualified table name? (Otherwise it appears at the end)

Returns:
true if it appears at the start
 o getCatalogSeparator
 public String getCatalogSeparator() throws SQLException
What's the separator between catalog and table name?

Returns:
the separator string
 o supportsSchemasInDataManipulation
 public boolean supportsSchemasInDataManipulation() throws SQLException
Can a schema name be used in a data manipulation statement?

Returns:
true if so
 o supportsSchemasInProcedureCalls
 public boolean supportsSchemasInProcedureCalls() throws SQLException
Can a schema name be used in a procedure call statement?

Returns:
true if so
 o supportsSchemasInTableDefinitions
 public boolean supportsSchemasInTableDefinitions() throws SQLException
Can a schema name be used in a table definition statement?

Returns:
true if so
 o supportsSchemasInIndexDefinitions
 public boolean supportsSchemasInIndexDefinitions() throws SQLException
Can a schema name be used in an index definition statement?

Returns:
true if so
 o supportsSchemasInPrivilegeDefinitions
 public boolean supportsSchemasInPrivilegeDefinitions() throws SQLException
Can a schema name be used in a privilege definition statement?

Returns:
true if so
 o supportsCatalogsInDataManipulation
 public boolean supportsCatalogsInDataManipulation() throws SQLException
Can a catalog name be used in a data manipulation statement?

Returns:
true if so
 o supportsCatalogsInProcedureCalls
 public boolean supportsCatalogsInProcedureCalls() throws SQLException
Can a catalog name be used in a procedure call statement?

Returns:
true if so
 o supportsCatalogsInTableDefinitions
 public boolean supportsCatalogsInTableDefinitions() throws SQLException
Can a catalog name be used in a table definition statement?

Returns:
true if so
 o supportsCatalogsInIndexDefinitions
 public boolean supportsCatalogsInIndexDefinitions() throws SQLException
Can a catalog name be used in a index definition statement?

Returns:
true if so
 o supportsCatalogsInPrivilegeDefinitions
 public boolean supportsCatalogsInPrivilegeDefinitions() throws SQLException
Can a catalog name be used in a privilege definition statement?

Returns:
true if so
 o supportsPositionedDelete
 public boolean supportsPositionedDelete() throws SQLException
Is positioned DELETE supported?

Returns:
true if so
 o supportsPositionedUpdate
 public boolean supportsPositionedUpdate() throws SQLException
Is positioned UPDATE supported?

Returns:
true if so
 o supportsSelectForUpdate
 public boolean supportsSelectForUpdate() throws SQLException
Is SELECT for UPDATE supported?

Returns:
true if so
 o supportsStoredProcedures
 public boolean supportsStoredProcedures() throws SQLException
Are stored procedure calls using the stored procedure escape syntax supported?

Returns:
true if so
 o supportsSubqueriesInComparisons
 public boolean supportsSubqueriesInComparisons() throws SQLException
Are subqueries in comparison expressions supported? A JDBC compliant driver always returns true.

Returns:
true if so
 o supportsSubqueriesInExists
 public boolean supportsSubqueriesInExists() throws SQLException
Are subqueries in exists expressions supported? A JDBC compliant driver always returns true.

Returns:
true if so
 o supportsSubqueriesInIns
 public boolean supportsSubqueriesInIns() throws SQLException
Are subqueries in "in" statements supported? A JDBC compliant driver always returns true.

Returns:
true if so
 o supportsSubqueriesInQuantifieds
 public boolean supportsSubqueriesInQuantifieds() throws SQLException
Are subqueries in quantified expressions supported? A JDBC compliant driver always returns true.

Returns:
true if so
 o supportsCorrelatedSubqueries
 public boolean supportsCorrelatedSubqueries() throws SQLException
Are correlated subqueries supported? A JDBC compliant driver always returns true.

Returns:
true if so
 o supportsUnion
 public boolean supportsUnion() throws SQLException
Is SQL UNION supported?

Returns:
true if so
 o supportsUnionAll
 public boolean supportsUnionAll() throws SQLException
Is SQL UNION ALL supported?

Returns:
true if so
 o supportsOpenCursorsAcrossCommit
 public boolean supportsOpenCursorsAcrossCommit() throws SQLException
Can cursors remain open across commits?

Returns:
true if so
See Also:
disableAutoClose
 o supportsOpenCursorsAcrossRollback
 public boolean supportsOpenCursorsAcrossRollback() throws SQLException
Can cursors remain open across rollbacks?

Returns:
true if so
See Also:
disableAutoClose
 o supportsOpenStatementsAcrossCommit
 public boolean supportsOpenStatementsAcrossCommit() throws SQLException
Can statements remain open across commits?

Returns:
true if so
See Also:
disableAutoClose
 o supportsOpenStatementsAcrossRollback
 public boolean supportsOpenStatementsAcrossRollback() throws SQLException
Can statements remain open across rollbacks?

Returns:
true if so
See Also:
disableAutoClose
 o getMaxBinaryLiteralLength
 public int getMaxBinaryLiteralLength() throws SQLException
How many hex characters can you have in an inline binary literal?

Returns:
max literal length
 o getMaxCharLiteralLength
 public int getMaxCharLiteralLength() throws SQLException
What's the max length for a character literal?

Returns:
max literal length
 o getMaxColumnNameLength
 public int getMaxColumnNameLength() throws SQLException
What's the limit on column name length?

Returns:
max literal length
 o getMaxColumnsInGroupBy
 public int getMaxColumnsInGroupBy() throws SQLException
What's the maximum number of columns in a "GROUP BY" clause?

Returns:
max number of columns
 o getMaxColumnsInIndex
 public int getMaxColumnsInIndex() throws SQLException
What's the maximum number of columns allowed in an index?

Returns:
max columns
 o getMaxColumnsInOrderBy
 public int getMaxColumnsInOrderBy() throws SQLException
What's the maximum number of columns in an "ORDER BY" clause?

Returns:
max columns
 o getMaxColumnsInSelect
 public int getMaxColumnsInSelect() throws SQLException
What's the maximum number of columns in a "SELECT" list?

Returns:
max columns
 o getMaxColumnsInTable
 public int getMaxColumnsInTable() throws SQLException
What's maximum number of columns in a table?

Returns:
max columns
 o getMaxConnections
 public int getMaxConnections() throws SQLException
How many active connections can we have at a time to this database?

Returns:
max connections
 o getMaxCursorNameLength
 public int getMaxCursorNameLength() throws SQLException
What's the maximum cursor name length?

Returns:
max cursor name length in bytes
 o getMaxIndexLength
 public int getMaxIndexLength() throws SQLException
What's the maximum length of an index (in bytes)?

Returns:
max index length in bytes
 o getMaxSchemaNameLength
 public int getMaxSchemaNameLength() throws SQLException
What's the maximum length allowed for a schema name?

Returns:
max name length in bytes
 o getMaxProcedureNameLength
 public int getMaxProcedureNameLength() throws SQLException
What's the maximum length of a procedure name?

Returns:
max name length in bytes
 o getMaxCatalogNameLength
 public int getMaxCatalogNameLength() throws SQLException
What's the maximum length of a catalog name?

Returns:
max name length in bytes
 o getMaxRowSize
 public int getMaxRowSize() throws SQLException
What's the maximum length of a single row?

Returns:
max row size in bytes
 o doesMaxRowSizeIncludeBlobs
 public boolean doesMaxRowSizeIncludeBlobs() throws SQLException
Did getMaxRowSize() include LONGVARCHAR and LONGVARBINARY blobs?

Returns:
true if so
 o getMaxStatementLength
 public int getMaxStatementLength() throws SQLException
What's the maximum length of a SQL statement?

Returns:
max length in bytes
 o getMaxStatements
 public int getMaxStatements() throws SQLException
How many active statements can we have open at one time to this database?

Returns:
the maximum
 o getMaxTableNameLength
 public int getMaxTableNameLength() throws SQLException
What's the maximum length of a table name?

Returns:
max name length in bytes
 o getMaxTablesInSelect
 public int getMaxTablesInSelect() throws SQLException
What's the maximum number of tables in a SELECT?

Returns:
the maximum
 o getMaxUserNameLength
 public int getMaxUserNameLength() throws SQLException
What's the maximum length of a user name?

Returns:
max name length in bytes
 o getDefaultTransactionIsolation
 public int getDefaultTransactionIsolation() throws SQLException
What's the database's default transaction isolation level? The values are defined in java.sql.Connection.

Returns:
the default isolation level
See Also:
Connection
 o supportsTransactions
 public boolean supportsTransactions() throws SQLException
Are transactions supported? If not, commit is a noop and the isolation level is TRANSACTION_NONE.

Returns:
true if transactions are supported
 o supportsTransactionIsolationLevel
 public boolean supportsTransactionIsolationLevel(int level) throws SQLException
Does the database support the given transaction isolation level?

Parameters:
level - the values are defined in java.sql.Connection
Returns:
true if so
See Also:
Connection
 o supportsDataDefinitionAndDataManipulationTransactions
 public boolean supportsDataDefinitionAndDataManipulationTransactions() throws SQLException
Are both data definition and data manipulation statements within a transaction supported?

Returns:
true if so
 o supportsDataManipulationTransactionsOnly
 public boolean supportsDataManipulationTransactionsOnly() throws SQLException
Are only data manipulation statements within a transaction supported?

Returns:
true if so
 o dataDefinitionCausesTransactionCommit
 public boolean dataDefinitionCausesTransactionCommit() throws SQLException
Does a data definition statement within a transaction force the transaction to commit?

Returns:
true if so
 o dataDefinitionIgnoredInTransactions
 public boolean dataDefinitionIgnoredInTransactions() throws SQLException
Is a data definition statement within a transaction ignored?

Returns:
true if so
 o getProcedures
 public synchronized ResultSet getProcedures(String catalog,
                                             String schemaPattern,
                                             String procedureNamePattern) throws SQLException
Get a description of stored procedures available in a catalog.

Only procedure descriptions matching the schema and procedure name criteria are returned. They are ordered by PROCEDURE_SCHEM, and PROCEDURE_NAME.

Each procedure description has the the following columns:

  1. PROCEDURE_CAT String => procedure catalog (may be null)
  2. PROCEDURE_SCHEM String => procedure schema (may be null)
  3. PROCEDURE_NAME String => procedure name
  4. reserved for future use
  5. reserved for future use
  6. reserved for future use
  7. REMARKS String => explanatory comment on the procedure
  8. PROCEDURE_TYPE short => kind of procedure:
    • procedureResultUnknown - May return a result
    • procedureNoResult - Does not return a result
    • procedureReturnsResult - Returns a result

Parameters:
catalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
schemaPattern - a schema name pattern; "" retrieves those without a schema
procedureNamePattern - a procedure name pattern
Returns:
ResultSet each row is a procedure description
See Also:
getSearchStringEscape
 o getProcedureColumns
 public synchronized ResultSet getProcedureColumns(String catalog,
                                                   String schemaPattern,
                                                   String procedureNamePattern,
                                                   String columnNamePattern) throws SQLException
Get a description of a catalog's stored procedure parameters and result columns.

Only descriptions matching the schema, procedure and parameter name criteria are returned. They are ordered by PROCEDURE_SCHEM and PROCEDURE_NAME. Within this, the return value, if any, is first. Next are the parameter descriptions in call order. The column descriptions follow in column number order.

Each row in the ResultSet is a parameter desription or column description with the following fields:

  1. PROCEDURE_CAT String => procedure catalog (may be null)
  2. PROCEDURE_SCHEM String => procedure schema (may be null)
  3. PROCEDURE_NAME String => procedure name
  4. COLUMN_NAME String => column/parameter name
  5. COLUMN_TYPE Short => kind of column/parameter:
    • procedureColumnUnknown - nobody knows
    • procedureColumnIn - IN parameter
    • procedureColumnInOut - INOUT parameter
    • procedureColumnOut - OUT parameter
    • procedureColumnReturn - procedure return value
    • procedureColumnResult - result column in ResultSet
  6. DATA_TYPE short => SQL type from java.sql.Types
  7. TYPE_NAME String => SQL type name
  8. PRECISION int => precision
  9. LENGTH int => length in bytes of data
  10. SCALE short => scale
  11. RADIX short => radix
  12. NULLABLE short => can it contain NULL?
    • procedureNoNulls - does not allow NULL values
    • procedureNullable - allows NULL values
    • procedureNullableUnknown - nullability unknown
  13. REMARKS String => comment describing parameter/column

Note: Some databases may not return the column descriptions for a procedure. Additional columns beyond REMARKS can be defined by the database.

Parameters:
catalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
schemaPattern - a schema name pattern; "" retrieves those without a schema
procedureNamePattern - a procedure name pattern
columnNamePattern - a column name pattern
Returns:
ResultSet each row is a stored procedure parameter or column description
See Also:
getSearchStringEscape
 o getTables
 public synchronized ResultSet getTables(String catalog,
                                         String schemaPattern,
                                         String tableNamePattern,
                                         String types[]) throws SQLException
Get a description of tables available in a catalog.

Only table descriptions matching the catalog, schema, table name and type criteria are returned. They are ordered by TABLE_TYPE, TABLE_SCHEM and TABLE_NAME.

Each table description has the following columns:

  1. TABLE_CAT String => table catalog (may be null)
  2. TABLE_SCHEM String => table schema (may be null)
  3. TABLE_NAME String => table name
  4. TABLE_TYPE String => table type. Typical types are "TABLE", "VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS", "SYNONYM".
  5. TABLE_REMARKS String => explanatory comment on the table

Note: Some databases may not return information for all tables.

Parameters:
catalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
schemaPattern - a schema name pattern; "" retrieves those without a schema
tableNamePattern - a table name pattern
types - a list of table types to include; null returns all types
Returns:
ResultSet each row is a table description
See Also:
getSearchStringEscape
 o getSchemas
 public ResultSet getSchemas() throws SQLException
Get the schema names available in this database. The results are ordered by schema name.

The schema column is:

  1. TABLE_SCHEM String => schema name

Returns:
ResultSet each row has a single String column that is a schema name
 o getCatalogs
 public ResultSet getCatalogs() throws SQLException
Get the catalog names available in this database. The results are ordered by catalog name.

The catalog column is:

  1. TABLE_CAT String => catalog name

Returns:
ResultSet each row has a single String column that is a catalog name
 o getTableTypes
 public ResultSet getTableTypes() throws SQLException
Get the table types available in this database. The results are ordered by table type.

The table type is:

  1. TABLE_TYPE String => table type. Typical types are "TABLE", "VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS", "SYNONYM".

Returns:
ResultSet each row has a single String column that is a table type
 o getColumns
 public synchronized ResultSet getColumns(String catalog,
                                          String schemaPattern,
                                          String tableNamePattern,
                                          String columnNamePattern) throws SQLException
Get a description of table columns available in a catalog.

Only column descriptions matching the catalog, schema, table and column name criteria are returned. They are ordered by TABLE_SCHEM, TABLE_NAME and ORDINAL_POSITION.

Each column description has the following columns:

  1. TABLE_CAT String => table catalog (may be null)
  2. TABLE_SCHEM String => table schema (may be null)
  3. TABLE_NAME String => table name
  4. COLUMN_NAME String => column name
  5. DATA_TYPE short => SQL type from java.sql.Types
  6. TYPE_NAME String => Data source dependent type name
  7. COLUMN_SIZE int => column size. For char or date types this is the maximum number of characters, for numeric or decimal types this is precision.
  8. BUFFER_LENGTH is not used.
  9. DECIMAL_DIGITS int => the number of fractional digits
  10. NUM_PREC_RADIX int => Radix (typically either 10 or 2)
  11. NULLABLE int => is NULL allowed?
    • columnNoNulls - might not allow NULL values
    • columnNullable - definitely allows NULL values
    • columnNullableUnknown - nullability unknown
  12. REMARKS String => comment describing column (may be null)
  13. COLUMN_DEF String => default value (may be null)
  14. SQL_DATA_TYPE int => unused
  15. SQL_DATETIME_SUB int => unused
  16. CHAR_OCTET_LENGTH int => for char types the maximum number of bytes in the column
  17. ORDINAL_POSITION int => index of column in table (starting at 1)
  18. IS_NULLABLE String => "NO" means column definitely does not allow NULL values; "YES" means the column might allow NULL values. An empty string means nobody knows.

Parameters:
catalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
schemaPattern - a schema name pattern; "" retrieves those without a schema
tableNamePattern - a table name pattern
columnNamePattern - a column name pattern
Returns:
ResultSet each row is a column description
See Also:
getSearchStringEscape
 o getColumnPrivileges
 public synchronized ResultSet getColumnPrivileges(String catalog,
                                                   String schemaPattern,
                                                   String tableNamePattern,
                                                   String columnNamePattern) throws SQLException
Get a description of the access rights for a table's columns.

Only privileges matching the column name criteria are returned. They are ordered by COLUMN_NAME and PRIVILEGE.

Each privilige description has the following columns:

  1. TABLE_CAT String => table catalog (may be null)
  2. TABLE_SCHEM String => table schema (may be null)
  3. TABLE_NAME String => table name
  4. COLUMN_NAME String => column name
  5. GRANTOR => grantor of access (may be null)
  6. GRANTEE String => grantee of access
  7. PRIVILEGE String => name of access (SELECT, INSERT, UPDATE, REFRENCES, ...)
  8. IS_GRANTABLE String => "YES" if grantee is permitted to grant to others; "NO" if not; null if unknown

Parameters:
catalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
schema - a schema name; "" retrieves those without a schema
table - a table name
columnNamePattern - a column name pattern
Returns:
ResultSet each row is a column privilege description
See Also:
getSearchStringEscape
 o getTablePrivileges
 public synchronized ResultSet getTablePrivileges(String catalog,
                                                  String schemaPattern,
                                                  String tableNamePattern) throws SQLException
Get a description of the access rights for each table available in a catalog.

Only privileges matching the schema and table name criteria are returned. They are ordered by TABLE_SCHEM, TABLE_NAME, and PRIVILEGE.

Each privilige description has the following columns:

  1. TABLE_CAT String => table catalog (may be null)
  2. TABLE_SCHEM String => table schema (may be null)
  3. TABLE_NAME String => table name
  4. COLUMN_NAME String => column name
  5. GRANTOR => grantor of access (may be null)
  6. GRANTEE String => grantee of access
  7. PRIVILEGE String => name of access (SELECT, INSERT, UPDATE, REFRENCES, ...)
  8. IS_GRANTABLE String => "YES" if grantee is permitted to grant to others; "NO" if not; null if unknown

Parameters:
catalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
schemaPattern - a schema name pattern; "" retrieves those without a schema
tableNamePattern - a table name pattern
Returns:
ResultSet each row is a table privilege description
See Also:
getSearchStringEscape
 o getBestRowIdentifier
 public synchronized ResultSet getBestRowIdentifier(String catalog,
                                                    String schema,
                                                    String table,
                                                    int scope,
                                                    boolean nullable) throws SQLException
Get a description of a table's optimal set of columns that uniquely identifies a row. They are ordered by SCOPE.

Each column description has the following columns:

  1. SCOPE short => actual scope of result
    • bestRowTemporary - very temporary, while using row
    • bestRowTransaction - valid for remainder of current transaction
    • bestRowSession - valid for remainder of current session
  2. COLUMN_NAME String => column name
  3. DATA_TYPE short => SQL data type from java.sql.Types
  4. TYPE_NAME String => Data source dependent type name
  5. COLUMN_SIZE int => precision
  6. BUFFER_LENGTH int => not used
  7. DECIMAL_DIGITS short => scale
  8. PSEUDO_COLUMN short => is this a pseudo column like an Oracle ROWID
    • bestRowUnknown - may or may not be pseudo column
    • bestRowNotPseudo - is NOT a pseudo column
    • bestRowPseudo - is a pseudo column

Parameters:
catalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
schema - a schema name; "" retrieves those without a schema
table - a table name
scope - the scope of interest; use same values as SCOPE
nullable - include columns that are nullable?
Returns:
ResultSet each row is a column description
 o getVersionColumns
 public synchronized ResultSet getVersionColumns(String catalog,
                                                 String schema,
                                                 String table) throws SQLException
Get a description of a table's columns that are automatically updated when any value in a row is updated. They are unordered.

Each column description has the following columns:

  1. SCOPE short => is not used
  2. COLUMN_NAME String => column name
  3. DATA_TYPE short => SQL data type from java.sql.Types
  4. TYPE_NAME String => Data source dependent type name
  5. COLUMN_SIZE int => precision
  6. BUFFER_LENGTH int => length of column value in bytes
  7. DECIMAL_DIGITS short => scale
  8. PSEUDO_COLUMN short => is this a pseudo column like an Oracle ROWID
    • versionColumnUnknown - may or may not be pseudo column
    • versionColumnNotPseudo - is NOT a pseudo column
    • versionColumnPseudo - is a pseudo column

Parameters:
catalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
schema - a schema name; "" retrieves those without a schema
table - a table name
Returns:
ResultSet each row is a column description
 o getPrimaryKeys
 public ResultSet getPrimaryKeys(String catalog,
                                 String schema,
                                 String table) throws SQLException
Get a description of a table's primary key columns. They are ordered by COLUMN_NAME.

Each column description has the following columns:

  1. TABLE_CAT String => table catalog (may be null)
  2. TABLE_SCHEM String => table schema (may be null)
  3. TABLE_NAME String => table name
  4. COLUMN_NAME String => column name
  5. KEY_SEQ short => sequence number within primary key
  6. PK_NAME String => primary key name (may be null)

Parameters:
catalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
schema - a schema name pattern; "" retrieves those without a schema
table - a table name
Returns:
ResultSet each row is a primary key column description
 o getImportedKeys
 public synchronized ResultSet getImportedKeys(String catalog,
                                               String schema,
                                               String table) throws SQLException
Get a description of the primary key columns that are referenced by a table's foreign key columns (the primary keys imported by a table). They are ordered by PKTABLE_CAT, PKTABLE_SCHEM, PKTABLE_NAME, and KEY_SEQ.

Each primary key column description has the following columns:

  1. PKTABLE_CAT String => primary key table catalog being imported (may be null)
  2. PKTABLE_SCHEM String => primary key table schema being imported (may be null)
  3. PKTABLE_NAME String => primary key table name being imported
  4. PKCOLUMN_NAME String => primary key column name being imported
  5. FKTABLE_CAT String => foreign key table catalog (may be null)
  6. FKTABLE_SCHEM String => foreign key table schema (may be null)
  7. FKTABLE_NAME String => foreign key table name
  8. FKCOLUMN_NAME String => foreign key column name
  9. KEY_SEQ short => sequence number within foreign key
  10. UPDATE_RULE short => What happens to foreign key when primary is updated:
    • importedKeyCascade - change imported key to agree with primary key update
    • importedKeyRestrict - do not allow update of primary key if it has been imported
    • importedKeySetNull - change imported key to NULL if its primary key has been updated
  11. DELETE_RULE short => What happens to the foreign key when primary is deleted.
    • importedKeyCascade - delete rows that import a deleted key
    • importedKeyRestrict - do not allow delete of primary key if it has been imported
    • importedKeySetNull - change imported key to NULL if its primary key has been deleted
  12. FK_NAME String => foreign key name (may be null)
  13. PK_NAME String => primary key name (may be null)

Parameters:
catalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
schema - a schema name pattern; "" retrieves those without a schema
table - a table name
Returns:
ResultSet each row is a primary key column description
See Also:
getExportedKeys
 o getExportedKeys
 public ResultSet getExportedKeys(String catalog,
                                  String schema,
                                  String table) throws SQLException
Get a description of a foreign key columns that reference a table's primary key columns (the foreign keys exported by a table). They are ordered by FKTABLE_CAT, FKTABLE_SCHEM, FKTABLE_NAME, and KEY_SEQ.

Each foreign key column description has the following columns:

  1. PKTABLE_CAT String => primary key table catalog (may be null)
  2. PKTABLE_SCHEM String => primary key table schema (may be null)
  3. PKTABLE_NAME String => primary key table name
  4. PKCOLUMN_NAME String => primary key column name
  5. FKTABLE_CAT String => foreign key table catalog (may be null) being exported (may be null)
  6. FKTABLE_SCHEM String => foreign key table schema (may be null) being exported (may be null)
  7. FKTABLE_NAME String => foreign key table name being exported
  8. FKCOLUMN_NAME String => foreign key column name being exported
  9. KEY_SEQ short => sequence number within foreign key
  10. UPDATE_RULE short => What happens to foreign key when primary is updated:
    • importedKeyCascade - change imported key to agree with primary key update
    • importedKeyRestrict - do not allow update of primary key if it has been imported
    • importedKeySetNull - change imported key to NULL if its primary key has been updated
  11. DELETE_RULE short => What happens to the foreign key when primary is deleted.
    • importedKeyCascade - delete rows that import a deleted key
    • importedKeyRestrict - do not allow delete of primary key if it has been imported
    • importedKeySetNull - change imported key to NULL if its primary key has been deleted
  12. FK_NAME String => foreign key identifier (may be null)
  13. PK_NAME String => primary key identifier (may be null)

Parameters:
catalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
schema - a schema name pattern; "" retrieves those without a schema
table - a table name
Returns:
ResultSet each row is a foreign key column description
See Also:
getImportedKeys
 o getCrossReference
 public ResultSet getCrossReference(String primaryCatalog,
                                    String primarySchema,
                                    String primaryTable,
                                    String foreignCatalog,
                                    String foreignSchema,
                                    String foreignTable) throws SQLException
Get a description of the foreign key columns in the foreign key table that reference the primary key columns of the primary key table (describe how one table imports another's key.) This should normally return a single foreign key/primary key pair (most tables only import a foreign key from a table once.) They are ordered by FKTABLE_CAT, FKTABLE_SCHEM, FKTABLE_NAME, and KEY_SEQ.

Each foreign key column description has the following columns:

  1. PKTABLE_CAT String => primary key table catalog (may be null)
  2. PKTABLE_SCHEM String => primary key table schema (may be null)
  3. PKTABLE_NAME String => primary key table name
  4. PKCOLUMN_NAME String => primary key column name
  5. FKTABLE_CAT String => foreign key table catalog (may be null) being exported (may be null)
  6. FKTABLE_SCHEM String => foreign key table schema (may be null) being exported (may be null)
  7. FKTABLE_NAME String => foreign key table name being exported
  8. FKCOLUMN_NAME String => foreign key column name being exported
  9. KEY_SEQ short => sequence number within foreign key
  10. UPDATE_RULE short => What happens to foreign key when primary is updated:
    • importedKeyCascade - change imported key to agree with primary key update
    • importedKeyRestrict - do not allow update of primary key if it has been imported
    • importedKeySetNull - change imported key to NULL if its primary key has been updated
  11. DELETE_RULE short => What happens to the foreign key when primary is deleted.
    • importedKeyCascade - delete rows that import a deleted key
    • importedKeyRestrict - do not allow delete of primary key if it has been imported
    • importedKeySetNull - change imported key to NULL if its primary key has been deleted
  12. FK_NAME String => foreign key identifier (may be null)
  13. PK_NAME String => primary key identifier (may be null)

Parameters:
primaryCatalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
primarySchema - a schema name pattern; "" retrieves those without a schema
primaryTable - the table name that exports the key
foreignCatalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
foreignSchema - a schema name pattern; "" retrieves those without a schema
foreignTable - the table name that imports the key
Returns:
ResultSet each row is a foreign key column description
See Also:
getImportedKeys
 o getTypeInfo
 public ResultSet getTypeInfo() throws SQLException
Get a description of all the standard SQL types supported by this database. They are ordered by DATA_TYPE and then by how closely the data type maps to the corresponding JDBC SQL type.

Each type description has the following columns:

  1. TYPE_NAME String => Type name
  2. DATA_TYPE short => SQL data type from java.sql.Types
  3. PRECISION int => maximum precision
  4. LITERAL_PREFIX String => prefix used to quote a literal (may be null)
  5. LITERAL_SUFFIX String => suffix used to quote a literal (may be null)
  6. CREATE_PARAMS String => parameters used in creating the type (may be null)
  7. NULLABLE short => can you use NULL for this type?
    • typeNoNulls - does not allow NULL values
    • typeNullable - allows NULL values
    • typeNullableUnknown - nullability unknown
  8. CASE_SENSITIVE boolean=> is it case sensitive?
  9. SEARCHABLE short => can you use "WHERE" based on this type:
    • typePredNone - No support
    • typePredChar - Only supported with WHERE .. LIKE
    • typePredBasic - Supported except for WHERE .. LIKE
    • typeSearchable - Supported for all WHERE ..
  10. UNSIGNED_ATTRIBUTE boolean => is it unsigned?
  11. FIXED_PREC_SCALE boolean => can it be a money value?
  12. AUTO_INCREMENT boolean => can it be used for an auto-increment value?
  13. LOCAL_TYPE_NAME String => localized version of type name (may be null)
  14. MINIMUM_SCALE short => minimum scale supported
  15. MAXIMUM_SCALE short => maximum scale supported
  16. SQL_DATA_TYPE int => unused
  17. SQL_DATETIME_SUB int => unused
  18. NUM_PREC_RADIX int => usually 2 or 10

Returns:
ResultSet each row is a SQL type description
 o getIndexInfo
 public synchronized ResultSet getIndexInfo(String catalog,
                                            String schema,
                                            String table,
                                            boolean unique,
                                            boolean approximate) throws SQLException
Get a description of a table's indices and statistics. They are ordered by NON_UNIQUE, TYPE, INDEX_NAME, and ORDINAL_POSITION.

Each index column description has the following columns:

  1. TABLE_CAT String => table catalog (may be null)
  2. TABLE_SCHEM String => table schema (may be null)
  3. TABLE_NAME String => table name
  4. NON_UNIQUE boolean => Can index values be non-unique? false when TYPE is tableIndexStatistic
  5. INDEX_QUALIFIER String => index catalog (may be null); null when TYPE is tableIndexStatistic
  6. INDEX_NAME String => index name; null when TYPE is tableIndexStatistic
  7. TYPE short => index type:
    • tableIndexStatistic - this identifies table statistics that are returned in conjuction with a table's index descriptions
    • tableIndexClustered - this is a clustered index
    • tableIndexHashed - this is a hashed index
    • tableIndexOther - this is some other style of index
  8. ORDINAL_POSITION short => column sequence number within index; zero when TYPE is tableIndexStatistic
  9. COLUMN_NAME String => column name; null when TYPE is tableIndexStatistic
  10. ASC_OR_DESC String => column sort sequence, "A" => ascending, "D" => descending, may be null if sort sequence is not supported; null when TYPE is tableIndexStatistic
  11. CARDINALITY int => When TYPE is tableIndexStatisic then this is the number of rows in the table; otherwise it is the number of unique values in the index.
  12. PAGES int => When TYPE is tableIndexStatisic then this is the number of pages used for the table, otherwise it is the number of pages used for the current index.
  13. FILTER_CONDITION String => Filter condition, if any. (may be null)

Parameters:
catalog - a catalog name; "" retrieves those without a catalog; null means drop catalog name from the selection criteria
schema - a schema name pattern; "" retrieves those without a schema
table - a table name
unique - when true, return only indices for unique values; when false, return indices regardless of whether unique or not
approximate - when true, result is allowed to reflect approximate or out of data values; when false, results are requested to be accurate
Returns:
ResultSet each row is an index column description
 o supportsResultSetType
 public boolean supportsResultSetType(int type) throws SQLException
Implements JDBC 2.0 DatabaseMetaData.supportsResultSetType. Does the database support the given result set type? This method always return true.

Parameters:
type - defined in java.sql.ResultSet
Returns:
true always
Throws: SQLException
if a database access error occurs
See Also:
Connection
 o supportsResultSetConcurrency
 public boolean supportsResultSetConcurrency(int type,
                                             int concurrency) throws SQLException
Implements JDBC 2.0 DatabaseMetaData.supportsResultSetConcurrency. Does the database support the concurrency type in combination with the given result set type? This method always return true.

Parameters:
type - defined in java.sql.ResultSet
concurrency - type defined in java.sql.ResultSet
Returns:
true always
Throws: SQLException
if a database access error occurs
See Also:
Connection
 o ownUpdatesAreVisible
 public boolean ownUpdatesAreVisible(int type) throws SQLException
Implements JDBC 2.0 DatabaseMetaData.ownUpdatesAreVisible. Indicates whether a result set's own updates are visible. Return true for scroll-insensitive and scroll-sensitive resultsets.

Parameters:
result - set type, i.e. ResultSet.TYPE_XXX
Returns:
true if updates are visible for the result set type; false otherwise
Throws: SQLException
if a database access error occurs
 o ownDeletesAreVisible
 public boolean ownDeletesAreVisible(int type) throws SQLException
Implements JDBC 2.0 DatabaseMetaData.ownDeletesAreVisible. Indicates whether a result set's own deletes are visible. Return true for scroll-insensitive and scroll-sensitive resultsets.

Parameters:
result - set type, i.e. ResultSet.TYPE_XXX
Returns:
true if deletes are visible for the result set type; false otherwise
Throws: SQLException
if a database access error occurs
 o ownInsertsAreVisible
 public boolean ownInsertsAreVisible(int type) throws SQLException
Implements JDBC 2.0 DatabaseMetaData.ownInsertsAreVisible. Indicates whether a result set's own inserts are visible. This method always return false in Oracle JDBC driver.

Parameters:
result - set type, i.e. ResultSet.TYPE_XXX
Returns:
true if inserts are visible for the result set type; false otherwise
Throws: SQLException
if a database access error occurs
 o othersUpdatesAreVisible
 public boolean othersUpdatesAreVisible(int type) throws SQLException
Implements JDBC 2.0 DatabaseMetaData.. Indicates whether updates made by others are visible. Return true for scroll-sensitive result sets; reutrn false otherwise.

Parameters:
result - set type, i.e. ResultSet.TYPE_XXX
Returns:
true if updates made by others are visible for the result set type; false otherwise
Throws: SQLException
if a database access error occurs
 o othersDeletesAreVisible
 public boolean othersDeletesAreVisible(int type) throws SQLException
Implements JDBC 2.0 DatabaseMetaData.. Indicates whether deletes made by others are visible. This method always return false since Oracle JDBC driver doesn't make others changes visible.

Parameters:
result - set type, i.e. ResultSet.TYPE_XXX
Returns:
true if deletes made by others are visible for the result set type; false otherwise
Throws: SQLException
if a database access error occurs
 o othersInsertsAreVisible
 public boolean othersInsertsAreVisible(int type) throws SQLException
Implements JDBC 2.0 DatabaseMetaData.othersInsertsAreVisible. Indicates whether inserts made by others are visible. This method always return false since Oracle JDBC driver doesn't make others changes visible.

Parameters:
result - set type, i.e. ResultSet.TYPE_XXX
Returns:
true if updates are visible for the result set type
Throws: SQLException
if a database access error occurs
 o updatesAreDetected
 public boolean updatesAreDetected(int type) throws SQLException
Implements JDBC 2.0 DatabaseMetaData.updatesAreDetected. Indicates whether or not a visible row update can be detected by calling the method ResultSet.rowUpdated. This method always return false since Oracle JDBC driver doesn't detect row changes.

Parameters:
result - set type, i.e. ResultSet.TYPE_XXX
Returns:
true if changes are detected by the result set type; false otherwise
Throws: SQLException
if a database access error occurs
 o deletesAreDetected
 public boolean deletesAreDetected(int type) throws SQLException
Implements JDBC 2.0 DatabaseMetaData.deletesAreDetected. Indicates whether or not a visible row delete can be detected by calling ResultSet.rowDeleted(). This method always return false since Oracle JDBC driver doesn't detect row changes.

Parameters:
result - set type, i.e. ResultSet.TYPE_XXX
Returns:
true if changes are detected by the resultset type
Throws: SQLException
if a database access error occurs
 o insertsAreDetected
 public boolean insertsAreDetected(int type) throws SQLException
Implements JDBC 2.0 DatabaseMetaData.insertsAreDetected. Indicates whether or not a visible row insert can be detected by calling ResultSet.rowInserted(). This method always return false since Oracle JDBC driver doesn't detect row changes.

Parameters:
result - set type, i.e. ResultSet.TYPE_XXX
Returns:
false always
Throws: SQLException
if a database access error occurs
 o supportsBatchUpdates
 public boolean supportsBatchUpdates() throws SQLException
Implements JDBC 2.0 DatabaseMetaData::supportBatchUpdates. Indicates whether the driver supports batch updates.

Returns:
true if the driver supports batch updates; false otherwise
 o getUDTs
 public ResultSet getUDTs(String catalog,
                          String schemaPattern,
                          String typeNamePattern,
                          int types[]) throws SQLException
Implements JDBC 2.0 DatabaseMetaData::getUDTs. Gets a description of the STRUCT types defined in a particular schema.

Only types matching the schema, type name and type criteria are returned. They are ordered by DATA_TYPE, TYPE_SCHEM and TYPE_NAME. The type name parameter may be a fully-qualified name. In this case, the catalog and schemaPattern parameters are ignored.

Each type description has the following columns:

  1. TYPE_CAT String => the type's catalog which is always null
  2. TYPE_SCHEM String => type's schema
  3. TYPE_NAME String => type name
  4. CLASS_NAME String => Java class name
  5. DATA_TYPE String => type value defined in java.sql.Types. Only STRUCT is supported.
  6. REMARKS String => explanatory comment on the type

Parameters:
catalog - is ignored since Oracle database doesn't support catalog for structured types
schemaPattern - a schema name pattern; "" retrieves those without a schema
typeNamePattern - a type name pattern; may be a fully-qualified name
types - a list of user-named types to include (Oracle only STRUCT) supports; null returns all types
Returns:
ResultSet - each row is a type description
Throws: SQLException
if a database access error occurs
 o getConnection
 public Connection getConnection() throws SQLException
Implements JDBC 2.0 DatabaseMetaData.getConnection. Retrieves the connection that produced this metadata object.

Returns:
the connection that produced this metadata object
 o getDriverNameInfo
 public static String getDriverNameInfo() throws SQLException
What's the name of this JDBC driver?

Returns:
JDBC driver name
 o getDriverVersionInfo
 public static String getDriverVersionInfo() throws SQLException
What's the version of this JDBC driver?

Returns:
JDBC driver version
 o getDriverMajorVersionInfo
 public static int getDriverMajorVersionInfo()
What's this JDBC driver's major version number?

Returns:
JDBC driver major version
 o getDriverMinorVersionInfo
 public static int getDriverMinorVersionInfo()
What's this JDBC driver's minor version number?

Returns:
JDBC driver minor version number

All Packages  Class Hierarchy  This Package  Previous  Next  Index