DatabaseMetaData

public interface DatabaseMetaData implements Wrapper

Comprehensive information about the database as a whole.

This interface is implemented by driver vendors to let users know the capabilities of a Database Management System (DBMS) in combination with the driver based on JDBCTM technology ("JDBC driver") that is used with it. Different relational DBMSs often support different features, implement features in different ways, and use different data types. In addition, a driver may implement a feature on top of what the DBMS offers. Information returned by methods in this interface applies to the capabilities of a particular driver and a particular DBMS working together. Note that as used in this documentation, the term "database" is used generically to refer to both the driver and DBMS.

A user for this interface is commonly a tool that needs to discover how to deal with the underlying DBMS. This is especially true for applications that are intended to be used with more than one DBMS. For example, a tool might use the method getTypeInfo to find out what data types can be used in a CREATE TABLE statement. Or a user might call the method supportsCorrelatedSubqueries to see if it is possible to use a correlated subquery or supportsBatchUpdates to see if it is possible to use batch updates.

Some DatabaseMetaData methods return lists of information in the form of ResultSet objects. Regular ResultSet methods, such as getString and getInt, can be used to retrieve the data from these ResultSet objects. If a given form of metadata is not available, an empty ResultSet will be returned. Additional columns beyond the columns defined to be returned by the ResultSet object for a given method can be defined by the JDBC driver vendor and must be accessed by their column label.

Some DatabaseMetaData methods take arguments that are String patterns. These arguments all have names such as fooPattern. Within a pattern String, "%" means match any substring of 0 or more characters, and "_" means match any one character. Only metadata entries matching the search pattern are returned. If a search pattern argument is set to null, that argument's criterion will be dropped from the search.

Constant Summary

short attributeNoNulls Indicates that NULL values might not be allowed.
short attributeNullable Indicates that NULL values are definitely allowed.
short attributeNullableUnknown Indicates that whether NULL values are allowed is not known.
int bestRowNotPseudo Indicates that the best row identifier is NOT a pseudo column.
int bestRowPseudo Indicates that the best row identifier is a pseudo column.
int bestRowSession Indicates that the scope of the best row identifier is the remainder of the current session.
int bestRowTemporary Indicates that the scope of the best row identifier is very temporary, lasting only while the row is being used.
int bestRowTransaction Indicates that the scope of the best row identifier is the remainder of the current transaction.
int bestRowUnknown Indicates that the best row identifier may or may not be a pseudo column.
int columnNoNulls Indicates that the column might not allow NULL values.
int columnNullable Indicates that the column definitely allows NULL values.
int columnNullableUnknown Indicates that the nullability of columns is unknown.
int functionColumnIn Indicates that the parameter or column is an IN parameter.
int functionColumnInOut Indicates that the parameter or column is an INOUT parameter.
int functionColumnOut Indicates that the parameter or column is an OUT parameter.
int functionColumnResult Indicates that the parameter or column is a column in a result set.
int functionColumnUnknown Indicates that type of the parameter or column is unknown.
int functionNoNulls Indicates that NULL values are not allowed.
int functionNoTable Indicates that the function does not return a table.
int functionNullable Indicates that NULL values are allowed.
int functionNullableUnknown Indicates that whether NULL values are allowed is unknown.
int functionResultUnknown Indicates that it is not known whether the function returns a result or a table.
int functionReturn Indicates that the parameter or column is a return value.
int functionReturnsTable Indicates that the function returns a table.
int importedKeyCascade For the column UPDATE_RULE, indicates that when the primary key is updated, the foreign key (imported key) is changed to agree with it.
int importedKeyInitiallyDeferred Indicates deferrability.
int importedKeyInitiallyImmediate Indicates deferrability.
int importedKeyNoAction For the columns UPDATE_RULE and DELETE_RULE, indicates that if the primary key has been imported, it cannot be updated or deleted.
int importedKeyNotDeferrable Indicates deferrability.
int importedKeyRestrict For the column UPDATE_RULE, indicates that a primary key may not be updated if it has been imported by another table as a foreign key.
int importedKeySetDefault For the columns UPDATE_RULE and DELETE_RULE, indicates that if the primary key is updated or deleted, the foreign key (imported key) is set to the default value.
int importedKeySetNull For the columns UPDATE_RULE and DELETE_RULE, indicates that when the primary key is updated or deleted, the foreign key (imported key) is changed to NULL.
int procedureColumnIn Indicates that the column stores IN parameters.
int procedureColumnInOut Indicates that the column stores INOUT parameters.
int procedureColumnOut Indicates that the column stores OUT parameters.
int procedureColumnResult Indicates that the column stores results.
int procedureColumnReturn Indicates that the column stores return values.
int procedureColumnUnknown Indicates that type of the column is unknown.
int procedureNoNulls Indicates that NULL values are not allowed.
int procedureNoResult Indicates that the procedure does not return a result.
int procedureNullable Indicates that NULL values are allowed.
int procedureNullableUnknown Indicates that whether NULL values are allowed is unknown.
int procedureResultUnknown Indicates that it is not known whether the procedure returns a result.
int procedureReturnsResult Indicates that the procedure returns a result.
int sqlStateSQL A possible return value for the method DatabaseMetaData.getSQLStateType which is used to indicate whether the value returned by the method SQLException.getSQLState is an SQLSTATE value.
int sqlStateSQL99 A possible return value for the method DatabaseMetaData.getSQLStateType which is used to indicate whether the value returned by the method SQLException.getSQLState is an SQL99 SQLSTATE value.
int sqlStateXOpen A possible return value for the method DatabaseMetaData.getSQLStateType which is used to indicate whether the value returned by the method SQLException.getSQLState is an X/Open (now know as Open Group) SQL CLI SQLSTATE value.
short tableIndexClustered Indicates that this table index is a clustered index.
short tableIndexHashed Indicates that this table index is a hashed index.
short tableIndexOther Indicates that this table index is not a clustered index, a hashed index, or table statistics; it is something other than these.
short tableIndexStatistic Indicates that this column contains table statistics that are returned in conjunction with a table's index descriptions.
int typeNoNulls Indicates that a NULL value is NOT allowed for this data type.
int typeNullable Indicates that a NULL value is allowed for this data type.
int typeNullableUnknown Indicates that it is not known whether a NULL value is allowed for this data type.
int typePredBasic Indicates that the data type can be only be used in WHERE search clauses that do not use LIKE predicates.
int typePredChar Indicates that the data type can be only be used in WHERE search clauses that use LIKE predicates.
int typePredNone Indicates that WHERE search clauses are not supported for this type.
int typeSearchable Indicates that all WHERE search clauses can be based on this type.
int versionColumnNotPseudo Indicates that this version column is NOT a pseudo column.
int versionColumnPseudo Indicates that this version column is a pseudo column.
int versionColumnUnknown Indicates that this version column may or may not be a pseudo column.

Public Method Summary

abstract boolean
allProceduresAreCallable()
Retrieves whether the current user can call all the procedures returned by the method getProcedures.
abstract boolean
allTablesAreSelectable()
Retrieves whether the current user can use all the tables returned by the method getTables in a SELECT statement.
abstract boolean
autoCommitFailureClosesAllResultSets()
Retrieves whether a SQLException while autoCommit is true inidcates that all open ResultSets are closed, even ones that are holdable.
abstract boolean
dataDefinitionCausesTransactionCommit()
Retrieves whether a data definition statement within a transaction forces the transaction to commit.
abstract boolean
dataDefinitionIgnoredInTransactions()
Retrieves whether this database ignores a data definition statement within a transaction.
abstract boolean
deletesAreDetected(int type)
Retrieves whether or not a visible row delete can be detected by calling the method ResultSet.rowDeleted.
abstract boolean
doesMaxRowSizeIncludeBlobs()
Retrieves whether the return value for the method getMaxRowSize includes the SQL data types LONGVARCHAR and LONGVARBINARY.
abstract ResultSet
getAttributes(String catalog, String schemaPattern, String typeNamePattern, String attributeNamePattern)
Retrieves a description of the given attribute of the given type for a user-defined type (UDT) that is available in the given schema and catalog.
abstract ResultSet
getBestRowIdentifier(String catalog, String schema, String table, int scope, boolean nullable)
Retrieves a description of a table's optimal set of columns that uniquely identifies a row.
abstract String
getCatalogSeparator()
Retrieves the String that this database uses as the separator between a catalog and table name.
abstract String
getCatalogTerm()
Retrieves the database vendor's preferred term for "catalog".
abstract ResultSet
getCatalogs()
Retrieves the catalog names available in this database.
abstract ResultSet
getClientInfoProperties()
Retrieves a list of the client info properties that the driver supports.
abstract ResultSet
getColumnPrivileges(String catalog, String schema, String table, String columnNamePattern)
Retrieves a description of the access rights for a table's columns.
abstract ResultSet
getColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern)
Retrieves a description of table columns available in the specified catalog.
abstract Connection
getConnection()
Retrieves the connection that produced this metadata object.
abstract ResultSet
getCrossReference(String parentCatalog, String parentSchema, String parentTable, String foreignCatalog, String foreignSchema, String foreignTable)
Retrieves a description of the foreign key columns in the given foreign key table that reference the primary key or the columns representing a unique constraint of the parent table (could be the same or a different table).
abstract int
getDatabaseMajorVersion()
Retrieves the major version number of the underlying database.
abstract int
getDatabaseMinorVersion()
Retrieves the minor version number of the underlying database.
abstract String
getDatabaseProductName()
Retrieves the name of this database product.
abstract String
getDatabaseProductVersion()
Retrieves the version number of this database product.
abstract int
getDefaultTransactionIsolation()
Retrieves this database's default transaction isolation level.
abstract int
getDriverMajorVersion()
Retrieves this JDBC driver's major version number.
abstract int
getDriverMinorVersion()
Retrieves this JDBC driver's minor version number.
abstract String
getDriverName()
Retrieves the name of this JDBC driver.
abstract String
getDriverVersion()
Retrieves the version number of this JDBC driver as a String.
abstract ResultSet
getExportedKeys(String catalog, String schema, String table)
Retrieves a description of the foreign key columns that reference the given table's primary key columns (the foreign keys exported by a table).
abstract String
getExtraNameCharacters()
Retrieves all the "extra" characters that can be used in unquoted identifier names (those beyond a-z, A-Z, 0-9 and _).
abstract ResultSet
getFunctionColumns(String catalog, String schemaPattern, String functionNamePattern, String columnNamePattern)
Retrieves a description of the given catalog's system or user function parameters and return type.
abstract ResultSet
getFunctions(String catalog, String schemaPattern, String functionNamePattern)
Retrieves a description of the system and user functions available in the given catalog.
abstract String
getIdentifierQuoteString()
Retrieves the string used to quote SQL identifiers.
abstract ResultSet
getImportedKeys(String catalog, String schema, String table)
Retrieves a description of the primary key columns that are referenced by the given table's foreign key columns (the primary keys imported by a table).
abstract ResultSet
getIndexInfo(String catalog, String schema, String table, boolean unique, boolean approximate)
Retrieves a description of the given table's indices and statistics.
abstract int
getJDBCMajorVersion()
Retrieves the major JDBC version number for this driver.
abstract int
getJDBCMinorVersion()
Retrieves the minor JDBC version number for this driver.
abstract int
getMaxBinaryLiteralLength()
Retrieves the maximum number of hex characters this database allows in an inline binary literal.
abstract int
getMaxCatalogNameLength()
Retrieves the maximum number of characters that this database allows in a catalog name.
abstract int
getMaxCharLiteralLength()
Retrieves the maximum number of characters this database allows for a character literal.
abstract int
getMaxColumnNameLength()
Retrieves the maximum number of characters this database allows for a column name.
abstract int
getMaxColumnsInGroupBy()
Retrieves the maximum number of columns this database allows in a GROUP BY clause.
abstract int
getMaxColumnsInIndex()
Retrieves the maximum number of columns this database allows in an index.
abstract int
getMaxColumnsInOrderBy()
Retrieves the maximum number of columns this database allows in an ORDER BY clause.
abstract int
getMaxColumnsInSelect()
Retrieves the maximum number of columns this database allows in a SELECT list.
abstract int
getMaxColumnsInTable()
Retrieves the maximum number of columns this database allows in a table.
abstract int
getMaxConnections()
Retrieves the maximum number of concurrent connections to this database that are possible.
abstract int
getMaxCursorNameLength()
Retrieves the maximum number of characters that this database allows in a cursor name.
abstract int
getMaxIndexLength()
Retrieves the maximum number of bytes this database allows for an index, including all of the parts of the index.
abstract int
getMaxProcedureNameLength()
Retrieves the maximum number of characters that this database allows in a procedure name.
abstract int
getMaxRowSize()
Retrieves the maximum number of bytes this database allows in a single row.
abstract int
getMaxSchemaNameLength()
Retrieves the maximum number of characters that this database allows in a schema name.
abstract int
getMaxStatementLength()
Retrieves the maximum number of characters this database allows in an SQL statement.
abstract int
getMaxStatements()
Retrieves the maximum number of active statements to this database that can be open at the same time.
abstract int
getMaxTableNameLength()
Retrieves the maximum number of characters this database allows in a table name.
abstract int
getMaxTablesInSelect()
Retrieves the maximum number of tables this database allows in a SELECT statement.
abstract int
getMaxUserNameLength()
Retrieves the maximum number of characters this database allows in a user name.
abstract String
getNumericFunctions()
Retrieves a comma-separated list of math functions available with this database.
abstract ResultSet
getPrimaryKeys(String catalog, String schema, String table)
Retrieves a description of the given table's primary key columns.
abstract ResultSet
getProcedureColumns(String catalog, String schemaPattern, String procedureNamePattern, String columnNamePattern)
Retrieves a description of the given catalog's stored procedure parameter and result columns.
abstract String
getProcedureTerm()
Retrieves the database vendor's preferred term for "procedure".
abstract ResultSet
getProcedures(String catalog, String schemaPattern, String procedureNamePattern)
Retrieves a description of the stored procedures available in the given catalog.
abstract int
getResultSetHoldability()
Retrieves this database's default holdability for ResultSet objects.
abstract RowIdLifetime
getRowIdLifetime()
Indicates whether or not this data source supports the SQL ROWID type, and if so the lifetime for which a RowId object remains valid.
abstract String
getSQLKeywords()
Retrieves a comma-separated list of all of this database's SQL keywords that are NOT also SQL:2003 keywords.
abstract int
getSQLStateType()
Indicates whether the SQLSTATE returned by SQLException.getSQLState is X/Open (now known as Open Group) SQL CLI or SQL:2003.
abstract String
getSchemaTerm()
Retrieves the database vendor's preferred term for "schema".
abstract ResultSet
getSchemas(String catalog, String schemaPattern)
Retrieves the schema names available in this database.
abstract ResultSet
getSchemas()
Retrieves the schema names available in this database.
abstract String
getSearchStringEscape()
Retrieves the string that can be used to escape wildcard characters.
abstract String
getStringFunctions()
Retrieves a comma-separated list of string functions available with this database.
abstract ResultSet
getSuperTables(String catalog, String schemaPattern, String tableNamePattern)
Retrieves a description of the table hierarchies defined in a particular schema in this database.
abstract ResultSet
getSuperTypes(String catalog, String schemaPattern, String typeNamePattern)
Retrieves a description of the user-defined type (UDT) hierarchies defined in a particular schema in this database.
abstract String
getSystemFunctions()
Retrieves a comma-separated list of system functions available with this database.
abstract ResultSet
getTablePrivileges(String catalog, String schemaPattern, String tableNamePattern)
Retrieves a description of the access rights for each table available in a catalog.
abstract ResultSet
getTableTypes()
Retrieves the table types available in this database.
abstract ResultSet
getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)
Retrieves a description of the tables available in the given catalog.
abstract String
getTimeDateFunctions()
Retrieves a comma-separated list of the time and date functions available with this database.
abstract ResultSet
getTypeInfo()
Retrieves a description of all the data types supported by this database.
abstract ResultSet
getUDTs(String catalog, String schemaPattern, String typeNamePattern, int[] types)
Retrieves a description of the user-defined types (UDTs) defined in a particular schema.
abstract String
getURL()
Retrieves the URL for this DBMS.
abstract String
getUserName()
Retrieves the user name as known to this database.
abstract ResultSet
getVersionColumns(String catalog, String schema, String table)
Retrieves a description of a table's columns that are automatically updated when any value in a row is updated.
abstract boolean
insertsAreDetected(int type)
Retrieves whether or not a visible row insert can be detected by calling the method ResultSet.rowInserted.
abstract boolean
isCatalogAtStart()
Retrieves whether a catalog appears at the start of a fully qualified table name.
abstract boolean
isReadOnly()
Retrieves whether this database is in read-only mode.
abstract boolean
locatorsUpdateCopy()
Indicates whether updates made to a LOB are made on a copy or directly to the LOB.
abstract boolean
nullPlusNonNullIsNull()
Retrieves whether this database supports concatenations between NULL and non-NULL values being NULL.
abstract boolean
nullsAreSortedAtEnd()
Retrieves whether NULL values are sorted at the end regardless of sort order.
abstract boolean
nullsAreSortedAtStart()
Retrieves whether NULL values are sorted at the start regardless of sort order.
abstract boolean
nullsAreSortedHigh()
Retrieves whether NULL values are sorted high.
abstract boolean
nullsAreSortedLow()
Retrieves whether NULL values are sorted low.
abstract boolean
othersDeletesAreVisible(int type)
Retrieves whether deletes made by others are visible.
abstract boolean
othersInsertsAreVisible(int type)
Retrieves whether inserts made by others are visible.
abstract boolean
othersUpdatesAreVisible(int type)
Retrieves whether updates made by others are visible.
abstract boolean
ownDeletesAreVisible(int type)
Retrieves whether a result set's own deletes are visible.
abstract boolean
ownInsertsAreVisible(int type)
Retrieves whether a result set's own inserts are visible.
abstract boolean
ownUpdatesAreVisible(int type)
Retrieves whether for the given type of ResultSet object, the result set's own updates are visible.
abstract boolean
storesLowerCaseIdentifiers()
Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in lower case.
abstract boolean
storesLowerCaseQuotedIdentifiers()
Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in lower case.
abstract boolean
storesMixedCaseIdentifiers()
Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in mixed case.
abstract boolean
storesMixedCaseQuotedIdentifiers()
Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in mixed case.
abstract boolean
storesUpperCaseIdentifiers()
Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in upper case.
abstract boolean
storesUpperCaseQuotedIdentifiers()
Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in upper case.
abstract boolean
supportsANSI92EntryLevelSQL()
Retrieves whether this database supports the ANSI92 entry level SQL grammar.
abstract boolean
supportsANSI92FullSQL()
Retrieves whether this database supports the ANSI92 full SQL grammar supported.
abstract boolean
supportsANSI92IntermediateSQL()
Retrieves whether this database supports the ANSI92 intermediate SQL grammar supported.
abstract boolean
supportsAlterTableWithAddColumn()
Retrieves whether this database supports ALTER TABLE with add column.
abstract boolean
supportsAlterTableWithDropColumn()
Retrieves whether this database supports ALTER TABLE with drop column.
abstract boolean
supportsBatchUpdates()
Retrieves whether this database supports batch updates.
abstract boolean
supportsCatalogsInDataManipulation()
Retrieves whether a catalog name can be used in a data manipulation statement.
abstract boolean
supportsCatalogsInIndexDefinitions()
Retrieves whether a catalog name can be used in an index definition statement.
abstract boolean
supportsCatalogsInPrivilegeDefinitions()
Retrieves whether a catalog name can be used in a privilege definition statement.
abstract boolean
supportsCatalogsInProcedureCalls()
Retrieves whether a catalog name can be used in a procedure call statement.
abstract boolean
supportsCatalogsInTableDefinitions()
Retrieves whether a catalog name can be used in a table definition statement.
abstract boolean
supportsColumnAliasing()
Retrieves whether this database supports column aliasing.
abstract boolean
supportsConvert(int fromType, int toType)
Retrieves whether this database supports the JDBC scalar function CONVERT for conversions between the JDBC types fromType and toType.
abstract boolean
supportsConvert()
Retrieves whether this database supports the JDBC scalar function CONVERT for the conversion of one JDBC type to another.
abstract boolean
supportsCoreSQLGrammar()
Retrieves whether this database supports the ODBC Core SQL grammar.
abstract boolean
supportsCorrelatedSubqueries()
Retrieves whether this database supports correlated subqueries.
abstract boolean
supportsDataDefinitionAndDataManipulationTransactions()
Retrieves whether this database supports both data definition and data manipulation statements within a transaction.
abstract boolean
supportsDataManipulationTransactionsOnly()
Retrieves whether this database supports only data manipulation statements within a transaction.
abstract boolean
supportsDifferentTableCorrelationNames()
Retrieves whether, when table correlation names are supported, they are restricted to being different from the names of the tables.
abstract boolean
supportsExpressionsInOrderBy()
Retrieves whether this database supports expressions in ORDER BY lists.
abstract boolean
supportsExtendedSQLGrammar()
Retrieves whether this database supports the ODBC Extended SQL grammar.
abstract boolean
supportsFullOuterJoins()
Retrieves whether this database supports full nested outer joins.
abstract boolean
supportsGetGeneratedKeys()
Retrieves whether auto-generated keys can be retrieved after a statement has been executed
abstract boolean
supportsGroupBy()
Retrieves whether this database supports some form of GROUP BY clause.
abstract boolean
supportsGroupByBeyondSelect()
Retrieves whether this database supports using columns not included in the SELECT statement in a GROUP BY clause provided that all of the columns in the SELECT statement are included in the GROUP BY clause.
abstract boolean
supportsGroupByUnrelated()
Retrieves whether this database supports using a column that is not in the SELECT statement in a GROUP BY clause.
abstract boolean
supportsIntegrityEnhancementFacility()
Retrieves whether this database supports the SQL Integrity Enhancement Facility.
abstract boolean
supportsLikeEscapeClause()
Retrieves whether this database supports specifying a LIKE escape clause.
abstract boolean
supportsLimitedOuterJoins()
Retrieves whether this database provides limited support for outer joins.
abstract boolean
supportsMinimumSQLGrammar()
Retrieves whether this database supports the ODBC Minimum SQL grammar.
abstract boolean
supportsMixedCaseIdentifiers()
Retrieves whether this database treats mixed case unquoted SQL identifiers as case sensitive and as a result stores them in mixed case.
abstract boolean
supportsMixedCaseQuotedIdentifiers()
Retrieves whether this database treats mixed case quoted SQL identifiers as case sensitive and as a result stores them in mixed case.
abstract boolean
supportsMultipleOpenResults()
Retrieves whether it is possible to have multiple ResultSet objects returned from a CallableStatement object simultaneously.
abstract boolean
supportsMultipleResultSets()
Retrieves whether this database supports getting multiple ResultSet objects from a single call to the method execute.
abstract boolean
supportsMultipleTransactions()
Retrieves whether this database allows having multiple transactions open at once (on different connections).
abstract boolean
supportsNamedParameters()
Retrieves whether this database supports named parameters to callable statements.
abstract boolean
supportsNonNullableColumns()
Retrieves whether columns in this database may be defined as non-nullable.
abstract boolean
supportsOpenCursorsAcrossCommit()
Retrieves whether this database supports keeping cursors open across commits.
abstract boolean
supportsOpenCursorsAcrossRollback()
Retrieves whether this database supports keeping cursors open across rollbacks.
abstract boolean
supportsOpenStatementsAcrossCommit()
Retrieves whether this database supports keeping statements open across commits.
abstract boolean
supportsOpenStatementsAcrossRollback()
Retrieves whether this database supports keeping statements open across rollbacks.
abstract boolean
supportsOrderByUnrelated()
Retrieves whether this database supports using a column that is not in the SELECT statement in an ORDER BY clause.
abstract boolean
supportsOuterJoins()
Retrieves whether this database supports some form of outer join.
abstract boolean
supportsPositionedDelete()
Retrieves whether this database supports positioned DELETE statements.
abstract boolean
supportsPositionedUpdate()
Retrieves whether this database supports positioned UPDATE statements.
abstract boolean
supportsResultSetConcurrency(int type, int concurrency)
Retrieves whether this database supports the given concurrency type in combination with the given result set type.
abstract boolean
supportsResultSetHoldability(int holdability)
Retrieves whether this database supports the given result set holdability.
abstract boolean
supportsResultSetType(int type)
Retrieves whether this database supports the given result set type.
abstract boolean
supportsSavepoints()
Retrieves whether this database supports savepoints.
abstract boolean
supportsSchemasInDataManipulation()
Retrieves whether a schema name can be used in a data manipulation statement.
abstract boolean
supportsSchemasInIndexDefinitions()
Retrieves whether a schema name can be used in an index definition statement.
abstract boolean
supportsSchemasInPrivilegeDefinitions()
Retrieves whether a schema name can be used in a privilege definition statement.
abstract boolean
supportsSchemasInProcedureCalls()
Retrieves whether a schema name can be used in a procedure call statement.
abstract boolean
supportsSchemasInTableDefinitions()
Retrieves whether a schema name can be used in a table definition statement.
abstract boolean
supportsSelectForUpdate()
Retrieves whether this database supports SELECT FOR UPDATE statements.
abstract boolean
supportsStatementPooling()
Retrieves whether this database supports statement pooling.
abstract boolean
supportsStoredFunctionsUsingCallSyntax()
Retrieves whether this database supports invoking user-defined or vendor functions using the stored procedure escape syntax.
abstract boolean
supportsStoredProcedures()
Retrieves whether this database supports stored procedure calls that use the stored procedure escape syntax.
abstract boolean
supportsSubqueriesInComparisons()
Retrieves whether this database supports subqueries in comparison expressions.
abstract boolean
supportsSubqueriesInExists()
Retrieves whether this database supports subqueries in EXISTS expressions.
abstract boolean
supportsSubqueriesInIns()
Retrieves whether this database supports subqueries in IN expressions.
abstract boolean
supportsSubqueriesInQuantifieds()
Retrieves whether this database supports subqueries in quantified expressions.
abstract boolean
supportsTableCorrelationNames()
Retrieves whether this database supports table correlation names.
abstract boolean
supportsTransactionIsolationLevel(int level)
Retrieves whether this database supports the given transaction isolation level.
abstract boolean
supportsTransactions()
Retrieves whether this database supports transactions.
abstract boolean
supportsUnion()
Retrieves whether this database supports SQL UNION.
abstract boolean
supportsUnionAll()
Retrieves whether this database supports SQL UNION ALL.
abstract boolean
updatesAreDetected(int type)
Retrieves whether or not a visible row update can be detected by calling the method ResultSet.rowUpdated.
abstract boolean
usesLocalFilePerTable()
Retrieves whether this database uses a file for each table.
abstract boolean
usesLocalFiles()
Retrieves whether this database stores tables in a local file.

Inherited Method Summary

Constants

public static final short attributeNoNulls

Indicates that NULL values might not be allowed.

A possible value for the column NULLABLE in the ResultSet object returned by the method getAttributes.

Constant Value: 0

public static final short attributeNullable

Indicates that NULL values are definitely allowed.

A possible value for the column NULLABLE in the ResultSet object returned by the method getAttributes.

Constant Value: 1

public static final short attributeNullableUnknown

Indicates that whether NULL values are allowed is not known.

A possible value for the column NULLABLE in the ResultSet object returned by the method getAttributes.

Constant Value: 2

public static final int bestRowNotPseudo

Indicates that the best row identifier is NOT a pseudo column.

A possible value for the column PSEUDO_COLUMN in the ResultSet object returned by the method getBestRowIdentifier.

Constant Value: 1

public static final int bestRowPseudo

Indicates that the best row identifier is a pseudo column.

A possible value for the column PSEUDO_COLUMN in the ResultSet object returned by the method getBestRowIdentifier.

Constant Value: 2

public static final int bestRowSession

Indicates that the scope of the best row identifier is the remainder of the current session.

A possible value for the column SCOPE in the ResultSet object returned by the method getBestRowIdentifier.

Constant Value: 2

public static final int bestRowTemporary

Indicates that the scope of the best row identifier is very temporary, lasting only while the row is being used.

A possible value for the column SCOPE in the ResultSet object returned by the method getBestRowIden