public interface DatabaseMetaData extends Wrapper
This interface is implemented by JDBC driver vendors in order to provide information about the underlying database capabilities in association with the JDBC driver.
Some of the methods in this interface take string parameters which are
patterns. Within these string patterns, '%'
and '_'
characters have special meanings. '%'
means
"match any substring of 0 or more characters". '_'
means
"match any character". Only metadata entries that match the pattern are
returned. If such a search pattern string is set to null
, that
argument's criteria are dropped from the search.
Modifier and Type | Field and Description |
---|---|
static short |
attributeNoNulls
States that it may not be permitted to store
NULL values. |
static short |
attributeNullable
States that
NULL values are definitely permitted. |
static short |
attributeNullableUnknown
States that whether
NULL values are permitted is unknown. |
static int |
bestRowNotPseudo
States the best row identifier is NOT a pseudo column.
|
static int |
bestRowPseudo
States that the best row identifier is a pseudo column.
|
static int |
bestRowSession
States that the remainder of the current session is used as the scope for
the best row identifier.
|
static int |
bestRowTemporary
States that best row identifier scope lasts only while the row is being
used.
|
static int |
bestRowTransaction
States that the remainder of the current transaction is used as the scope
for the best row identifier.
|
static int |
bestRowUnknown
States that the best row identifier may or may not be a pseudo column.
|
static int |
columnNoNulls
States that the column must not allow
NULL values. |
static int |
columnNullable
States that the column definitely allows
NULL values. |
static int |
columnNullableUnknown
States that it is unknown whether the columns may be nulled.
|
static int |
functionColumnIn
States that the parameter or column is an IN parameter
|
static int |
functionColumnInOut
States that the parameter or column is an INOUT parameter
|
static int |
functionColumnOut
States that the parameter or column is an OUT parameter
|
static int |
functionColumnResult
States that the parameter or column is a column in a result set
|
static int |
functionColumnUnknown
States that the parameter of function is unknown
|
static int |
functionNoNulls
States that NULL values are not allowed
|
static int |
functionNoTable
States that the function does not return a table
|
static int |
functionNullable
States that NULL values are allowed
|
static int |
functionNullableUnknown
States that whether NULL values are allowed is unknown
|
static int |
functionResultUnknown
States that it is not known whether the function returns a result or a
table
|
static int |
functionReturn
States that the parameter or column is a return value
|
static int |
functionReturnsTable
States that the function returns a table.
|
static int |
importedKeyCascade
For the column
UPDATE_RULE , states that when the primary key is
updated, the foreign key (imported key) is changed accordingly. |
static int |
importedKeyInitiallyDeferred
States that the evaluation of foreign key constraints is deferred (delayed
until commit).
|
static int |
importedKeyInitiallyImmediate
States that the evaluation of foreign key constraint is
IMMEDIATE
. |
static int |
importedKeyNoAction
For the columns
UPDATE_RULE and DELETE_RULE , states that
if the primary key has been imported, it cannot be updated or deleted. |
static int |
importedKeyNotDeferrable
States that the evaluation of foreign key constraint must not be
DEFERRED . |
static int |
importedKeyRestrict
States that a primary key must not be updated when imported as a foreign
key by some other table.
|
static int |
importedKeySetDefault
States that when the primary key is modified (updated or deleted) the
foreign (imported) key is changed to its default value.
|
static int |
importedKeySetNull
States that when the primary key is modified (updated or deleted) the
foreign (imported) key is changed to
NULL . |
static int |
procedureColumnIn
States that the column stores
IN type parameters. |
static int |
procedureColumnInOut
States that this column stores
INOUT type parameters. |
static int |
procedureColumnOut
States that this column stores
OUT type parameters. |
static int |
procedureColumnResult
States that the column stores results.
|
static int |
procedureColumnReturn
States that the column stores return values.
|
static int |
procedureColumnUnknown
States that type of the column is unknown.
|
static int |
procedureNoNulls
States that
NULL values are not permitted. |
static int |
procedureNoResult
States that the procedure does not return a result.
|
static int |
procedureNullable
States that
NULL values are permitted. |
static int |
procedureNullableUnknown
States that it is unknown whether
NULL values are permitted. |
static int |
procedureResultUnknown
States that it is unknown whether or not the procedure returns a result.
|
static int |
procedureReturnsResult
States that the procedure returns a result.
|
static int |
sqlStateSQL
States that the method DatabaseMetaData.getSQLStateType may returns an
SQLSTATE value or not.
|
static int |
sqlStateSQL99
States that the value is an SQL99
SQLSTATE value. |
static int |
sqlStateXOpen
States that the value is an SQL
CLI SQLSTATE value as defined by
the X/Open standard. |
static short |
tableIndexClustered
States that this table index is a clustered index.
|
static short |
tableIndexHashed
States that this table index is a hashed index.
|
static short |
tableIndexOther
States this table's index is neither a clustered index, not a hashed
index, and not a table statistics index; i.e.
|
static short |
tableIndexStatistic
States this column has the table's statistics, and that it is returned in
conjunction with the table's index description.
|
static int |
typeNoNulls
States that a
NULL value is NOT permitted for
this data type. |
static int |
typeNullable
States that a
NULL value is permitted for this data type. |
static int |
typeNullableUnknown
States that it is unknown if a
NULL value is permitted for
this data type. |
static int |
typePredBasic
States that this column shall not be used for
WHERE statements
with a LIKE clause. |
static int |
typePredChar
States that this column can only be used in a
WHERE...LIKE
statement. |
static int |
typePredNone
States that this column does not support searches.
|
static int |
typeSearchable
States that the column is searchable.
|
static int |
versionColumnNotPseudo
States that the version column is known to be not a pseudo column.
|
static int |
versionColumnPseudo
States that this version column is known to be a pseudo column.
|
static int |
versionColumnUnknown
States that the version column may be a pseudo column or not.
|
Modifier and Type | Method and Description |
---|---|
boolean |
allProceduresAreCallable()
Returns whether all procedures returned by
getProcedures(java.lang.String, java.lang.String, java.lang.String) can be
called by the current user. |
boolean |
allTablesAreSelectable()
Returns whether all the tables returned by
getTables can be used
by the current user in a SELECT statement. |
boolean |
autoCommitFailureClosesAllResultSets()
Determine if a SQLException while autoCommit is true indicates that all
open ResultSets are closed, even ones that are holdable
|
boolean |
dataDefinitionCausesTransactionCommit()
Returns whether a data definition statement in a transaction forces a
commit of the transaction. |
boolean |
dataDefinitionIgnoredInTransactions()
Returns whether the database ignores data definition statements within a
transaction.
|
boolean |
deletesAreDetected(int type)
Returns whether a visible row delete can be detected by calling
ResultSet.rowDeleted() . |
boolean |
doesMaxRowSizeIncludeBlobs()
Returns whether the return value of
getMaxRowSize includes the
SQL data types LONGVARCHAR and LONGVARBINARY . |
ResultSet |
getAttributes(String catalog,
String schemaPattern,
String typeNamePattern,
String attributeNamePattern)
Returns a
ResultSet describing a subset of the attributes of a
specified SQL User Defined Type (UDT) for a specified schema and catalog. |
ResultSet |
getBestRowIdentifier(String catalog,
String schema,
String table,
int scope,
boolean nullable)
Returns a list of a table's optimal set of columns that uniquely
identify the rows.
|
ResultSet |
getCatalogs()
Returns the set of catalog names available in this database.
|
String |
getCatalogSeparator()
Returns the separator that this database uses between a catalog name and
table name.
|
String |
getCatalogTerm()
Returns the term that the database vendor prefers term for "catalog".
|
ResultSet |
getClientInfoProperties()
Returns a list of the client info properties of the driver.
|
ResultSet |
getColumnPrivileges(String catalog,
String schema,
String table,
String columnNamePattern)
Returns a description of access rights for a table's columns.
|
ResultSet |
getColumns(String catalog,
String schemaPattern,
String tableNamePattern,
String columnNamePattern)
Returns a description of table columns available in a specified catalog.
|
Connection |
getConnection()
Returns the database connection that created this metadata.
|
ResultSet |
getCrossReference(String primaryCatalog,
String primarySchema,
String primaryTable,
String foreignCatalog,
String foreignSchema,
String foreignTable)
Returns a list of foreign key columns in a given foreign key table that
reference the primary key columns of a supplied primary key table.
|
int |
getDatabaseMajorVersion()
Returns the major version number of the database software.
|
int |
getDatabaseMinorVersion()
Returns the minor version number of the database software.
|
String |
getDatabaseProductName()
Returns the name of the database software.
|
String |
getDatabaseProductVersion()
Returns the version number of this database software.
|
int |
getDefaultTransactionIsolation()
Returns the default transaction isolation level for this database.
|
int |
getDriverMajorVersion()
Returns the JDBC driver's major version number.
|
int |
getDriverMinorVersion()
Returns the JDBC driver's minor version number.
|
String |
getDriverName()
Returns the name of this JDBC driver.
|
String |
getDriverVersion()
Returns the version number of this JDBC driver.
|
ResultSet |
getExportedKeys(String catalog,
String schema,
String table)
Returns a list of the foreign key columns that reference the primary key
columns of a specified table (the foreign keys exported by a table).
|
String |
getExtraNameCharacters()
Returns a string of characters that may be used in unquoted identifier
names.
|
ResultSet |
getFunctionColumns(String catalog,
String schemaPattern,
String functionNamePattern,
String columnNamePattern)
Returns a description according to the given catalog's system or user
function parameters and return type.
|
ResultSet |
getFunctions(String catalog,
String schemaPattern,
String functionNamePattern)
Returns a description of the system and user functions available
according to the given catalog.
|
String |
getIdentifierQuoteString()
Returns the string used to quote SQL identifiers.
|
ResultSet |
getImportedKeys(String catalog,
String schema,
String table)
Returns a list columns in a table that are both primary keys and
referenced by the table's foreign key columns (that is, the primary keys
imported by a table).
|
ResultSet |
getIndexInfo(String catalog,
String schema,
String table,
boolean unique,
boolean approximate)
Returns a list of indices and statistics for a specified table.
|
int |
getJDBCMajorVersion()
Returns this driver's major JDBC version number.
|
int |
getJDBCMinorVersion()
Returns the minor JDBC version number for this driver.
|
int |
getMaxBinaryLiteralLength()
Get the maximum number of hex characters in an in-line binary literal for
this database.
|
int |
getMaxCatalogNameLength()
Returns the maximum size of a catalog name in this database.
|
int |
getMaxCharLiteralLength()
Returns the maximum size for a character literal in this database.
|
int |
getMaxColumnNameLength()
Returns the maximum size for a Column name for this database.
|
int |
getMaxColumnsInGroupBy()
Get the maximum number of columns in a
GROUP BY clause for this
database. |
int |
getMaxColumnsInIndex()
Returns the maximum number of columns in an Index for this database.
|
int |
getMaxColumnsInOrderBy()
Returns the maximum number of columns in an
ORDER BY clause for
this database. |
int |
getMaxColumnsInSelect()
Returns the maximum number of columns in a
SELECT list for this
database. |
int |
getMaxColumnsInTable()
Returns the maximum number of columns in a table for this database.
|
int |
getMaxConnections()
Returns the database's maximum number of concurrent connections.
|
int |
getMaxCursorNameLength()
Returns the maximum length of a cursor name for this database.
|
int |
getMaxIndexLength()
Returns the maximum length in bytes for an Index for this database.
|
int |
getMaxProcedureNameLength()
Returns the maximum number of characters for a procedure name in this
database.
|
int |
getMaxRowSize()
Returns the maximum number of bytes within a single row for this
database.
|
int |
getMaxSchemaNameLength()
Returns the maximum number of characters in a schema name for this
database.
|
int |
getMaxStatementLength()
Returns the maximum number of characters in an SQL statement for this
database.
|
int |
getMaxStatements()
Get the maximum number of simultaneously open active statements for this
database.
|
int |
getMaxTableNameLength()
Returns the maximum size for a table name in the database.
|
int |
getMaxTablesInSelect()
Returns the maximum number of tables permitted in a
SELECT
statement for the database. |
int |
getMaxUserNameLength()
Returns the maximum number of characters in a user name for the database.
|
String |
getNumericFunctions()
Returns a list of the math functions available with this database.
|
ResultSet |
getPrimaryKeys(String catalog,
String schema,
String table)
Returns a list of the primary key columns of a specified table.
|
ResultSet |
getProcedureColumns(String catalog,
String schemaPattern,
String procedureNamePattern,
String columnNamePattern)
Returns a list of parameter and result columns for the stored procedures
belonging to a specified catalog.
|
ResultSet |
getProcedures(String catalog,
String schemaPattern,
String procedureNamePattern)
Returns a list of the stored procedures available in a specified catalog.
|
String |
getProcedureTerm()
Returns the database vendor's preferred name for "procedure".
|
int |
getResultSetHoldability()
Returns the result set's default holdability.
|
RowIdLifetime |
getRowIdLifetime()
Returns the lifetime for which a RowId object remains valid if this data
source supports the SQL ROWID type
|
ResultSet |
getSchemas()
Returns a list of the schema names in the database.
|
ResultSet |
getSchemas(String catalog,
String schemaPattern)
Returns the schema names ordered by TABLE_CATALOG and TABLE_SCHEMA.
|
String |
getSchemaTerm()
Returns the database vendor's preferred term for "schema".
|
String |
getSearchStringEscape()
Returns the string that is used to escape wildcard characters.
|
String |
getSQLKeywords()
Returns a list of all the SQL keywords that are NOT also SQL92 keywords
for the database.
|
int |
getSQLStateType()
States the type of
SQLState value returned by SQLException.getSQLState . |
String |
getStringFunctions()
Returns a list of string functions available with the database.
|
ResultSet |
getSuperTables(String catalog,
String schemaPattern,
String tableNamePattern)
Returns a listing of the hierarchies of tables in a specified schema in
the database.
|
ResultSet |
getSuperTypes(String catalog,
String schemaPattern,
String typeNamePattern)
Returns the User Defined Type (UDT) hierarchies for a given schema.
|
String |
getSystemFunctions()
Returns a list of system functions available with the database.
|
ResultSet |
getTablePrivileges(String catalog,
String schemaPattern,
String tableNamePattern)
Returns a description of access rights for each table present in a
catalog.
|
ResultSet |
getTables(String catalog,
String schemaPattern,
String tableNamePattern,
String[] types)
Returns a description of the tables in a specified catalog.
|
ResultSet |
getTableTypes()
Returns a list of table types supported by the database.
|
String |
getTimeDateFunctions()
Returns a list of time and date functions available for the database.
|
ResultSet |
getTypeInfo()
Get a list of the standard SQL types supported by this database.
|
ResultSet |
getUDTs(String catalog,
String schemaPattern,
String typeNamePattern,
int[] types)
Returns a description of the User Defined Types (UDTs) defined in a given
schema, which includes the types
DISTINCT , STRUCT and
JAVA_OBJECT . |
String |
getURL()
Returns the URL for this database.
|
String |
getUserName()
Determine the user name as known by the database.
|
ResultSet |
getVersionColumns(String catalog,
String schema,
String table)
Returns which of a table's columns are automatically updated when any
value in a row is updated.
|
boolean |
insertsAreDetected(int type)
Determines whether a visible row insert can be detected by calling
ResultSet.rowInserted . |
boolean |
isCatalogAtStart()
Determine whether a fully qualified table name is prefixed or suffixed to
a fully qualified table name.
|
boolean |
isReadOnly()
Determines whether the database is in read-only mode.
|
boolean |
locatorsUpdateCopy()
Determines whether updates are made to a copy of, or directly on, Large Objects
(
LOB s). |
boolean |
nullPlusNonNullIsNull()
Determines whether the database handles concatenations between
NULL and
non-NULL values by producing a NULL output. |
boolean |
nullsAreSortedAtEnd()
Determines whether
NULL values are always sorted to the end of sorted
results regardless of requested sort order. |
boolean |
nullsAreSortedAtStart()
Determines whether
NULL values are always sorted at the start of the
sorted list, irrespective of the sort order. |
boolean |
nullsAreSortedHigh()
Determines whether
NULL values are sorted high - i.e. |
boolean |
nullsAreSortedLow()
Determines whether
NULL values are sorted low - i.e. |
boolean |
othersDeletesAreVisible(int type)
Determines whether deletes made by others are visible, for a specified
ResultSet type. |
boolean |
othersInsertsAreVisible(int type)
Determines whether inserts made by others are visible, for a specified
ResultSet type. |
boolean |
othersUpdatesAreVisible(int type)
Determines whether updates made by others are visible, for a specified
ResultSet type. |
boolean |
ownDeletesAreVisible(int type)
Determines whether a
ResultSet can see its own deletes, for a
specified ResultSet type. |
boolean |
ownInsertsAreVisible(int type)
Determines whether a
ResultSet can see its own inserts, for a
specified ResultSet type. |
boolean |
ownUpdatesAreVisible(int type)
Determines whether a
ResultSet can see its own updates, for a
specified ResultSet type. |
boolean |
storesLowerCaseIdentifiers()
Determines whether the database treats SQL identifiers that are in mixed
case (and unquoted) as case insensitive.
|
boolean |
storesLowerCaseQuotedIdentifiers()
Determines whether the database considers mixed case quoted SQL
identifiers as case insensitive and stores them in lower case.
|
boolean |
storesMixedCaseIdentifiers()
Determines whether the database considers mixed case unquoted SQL
identifiers as case insensitive and stores them in mixed case.
|
boolean |
storesMixedCaseQuotedIdentifiers()
Determines whether the database considers identifiers as case insensitive
if they are mixed case quoted SQL.
|
boolean |
storesUpperCaseIdentifiers()
Determines whether the database considers mixed case unquoted SQL
identifiers as case insensitive and stores them in upper case.
|
boolean |
storesUpperCaseQuotedIdentifiers()
Determines whether the database considers mixed case quoted SQL
identifiers as case insensitive and stores them in upper case.
|
boolean |
supportsAlterTableWithAddColumn()
Determines whether the database supports
ALTER TABLE operation with
ADD COLUMN . |
boolean |
supportsAlterTableWithDropColumn()
Determines whether the database supports
ALTER TABLE operation with
DROP COLUMN . |
boolean |
supportsANSI92EntryLevelSQL()
Determines whether the database supports the ANSI92 entry level SQL grammar.
|
boolean |
supportsANSI92FullSQL()
Determines whether the database supports the ANSI92 full SQL grammar.
|
boolean |
supportsANSI92IntermediateSQL()
Determines whether the database supports the ANSI92 intermediate SQL Grammar.
|
boolean |
supportsBatchUpdates()
Determines whether the database supports batch updates.
|
boolean |
supportsCatalogsInDataManipulation()
Determines whether catalog names may be used in data manipulation
statements.
|
boolean |
supportsCatalogsInIndexDefinitions()
Determines whether catalog names can be used in index definition statements.
|
boolean |
supportsCatalogsInPrivilegeDefinitions()
Determines whether catalog names can be used in privilege definition
statements.
|
boolean |
supportsCatalogsInProcedureCalls()
Determines whether catalog names can be used in procedure call statements.
|
boolean |
supportsCatalogsInTableDefinitions()
Determines whether catalog names may be used in table definition statements.
|
boolean |
supportsColumnAliasing()
Determines whether the database supports column aliasing.
|
boolean |
supportsConvert()
Determines whether the database supports the
CONVERT operation between
SQL types. |
boolean |
supportsConvert(int fromType,
int toType)
Determines whether the database supports
CONVERT operation for two
supplied SQL types. |
boolean |
supportsCoreSQLGrammar()
Determines whether the database supports the Core SQL Grammar for ODBC.
|
boolean |
supportsCorrelatedSubqueries()
Determines whether the database supports correlated sub-queries.
|
boolean |
supportsDataDefinitionAndDataManipulationTransactions()
Determines whether the database allows both data definition and data
manipulation statements inside a transaction.
|
boolean |
supportsDataManipulationTransactionsOnly()
Determines whether the database only allows data manipulation statements inside
a transaction.
|
boolean |
supportsDifferentTableCorrelationNames()
Determines whether table correlation names are required to be different from
the names of the tables, when they are supported.
|
boolean |
supportsExpressionsInOrderBy()
Determines whether expressions in
ORDER BY lists are supported. |
boolean |
supportsExtendedSQLGrammar()
Determines whether the Extended SQL Grammar for ODBC is supported.
|
boolean |
supportsFullOuterJoins()
Determines whether the database supports full nested outer joins.
|
boolean |
supportsGetGeneratedKeys()
Determines whether auto generated keys can be returned when a statement
executes.
|
boolean |
supportsGroupBy()
Determines whether the database supports
GROUP BY clauses. |
boolean |
supportsGroupByBeyondSelect()
Determines whether the database supports using a column name in a
GROUP
BY clause not included in the SELECT statement as long as all of
the columns in the SELECT statement are used in the GROUP
BY clause. |
boolean |
supportsGroupByUnrelated()
Determines whether the database supports using a column name in a
GROUP
BY clause that is not in the SELECT statement. |
boolean |
supportsIntegrityEnhancementFacility()
Determines whether the database supports SQL Integrity Enhancement
Facility.
|
boolean |
supportsLikeEscapeClause()
Determines whether the database supports a
LIKE escape clause. |
boolean |
supportsLimitedOuterJoins()
Determines whether the database provides limited support for outer join
operations.
|
boolean |
supportsMinimumSQLGrammar()
Determines whether the database supports Minimum SQL Grammar for ODBC.
|
boolean |
supportsMixedCaseIdentifiers()
Determines whether the database treats mixed case unquoted SQL identifiers as
case sensitive storing them in mixed case.
|
boolean |
supportsMixedCaseQuotedIdentifiers()
Determines whether the database considers mixed case quoted SQL
identifiers as case sensitive, storing them in mixed case.
|
boolean |
supportsMultipleOpenResults()
Determines whether it is possible for a single
CallableStatement to
return multiple ResultSet s simultaneously. |
boolean |
supportsMultipleResultSets()
Determines whether retrieving multiple
ResultSet s from a single
call to the execute method is supported. |
boolean |
supportsMultipleTransactions()
Determines whether multiple simultaneous transactions on
different connections are supported.
|
boolean |
supportsNamedParameters()
Determines whether callable statements with named parameters is supported.
|
boolean |
supportsNonNullableColumns()
Determines whether columns in the database can be defined as non-nullable.
|
boolean |
supportsOpenCursorsAcrossCommit()
Determines whether keeping cursors open across commit operations is
supported.
|
boolean |
supportsOpenCursorsAcrossRollback()
Determines whether the database can keep cursors open across rollback
operations.
|
boolean |
supportsOpenStatementsAcrossCommit()
Determines whether keeping statements open across commit operations is
supported.
|
boolean |
supportsOpenStatementsAcrossRollback()
Determines whether keeping statements open across rollback operations is
supported.
|
boolean |
supportsOrderByUnrelated()
Determines whether using a column in an
ORDER BY clause that is
not in the SELECT statement is supported. |
boolean |
supportsOuterJoins()
Determines whether outer join operations are supported.
|
boolean |
supportsPositionedDelete()
Determines whether positioned
DELETE statements are supported. |
boolean |
supportsPositionedUpdate()
Determines whether positioned
UPDATE statements are supported. |
boolean |
supportsResultSetConcurrency(int type,
int concurrency)
Determines whether there is support for a given concurrency style for the
given
ResultSet . |
boolean |
supportsResultSetHoldability(int holdability)
Determines whether the supplied
ResultSet holdability mode is
supported. |
boolean |
supportsResultSetType(int type)
Determines whether the supplied
ResultSet type is supported. |
boolean |
supportsSavepoints()
Determines whether savepoints for transactions are supported.
|
boolean |
supportsSchemasInDataManipulation()
Determines whether a schema name may be used in a data manipulation
statement.
|
boolean |
supportsSchemasInIndexDefinitions()
Determines whether a schema name may be used in an index definition
statement.
|
boolean |
supportsSchemasInPrivilegeDefinitions()
Determines whether a database schema name can be used in a privilege
definition statement.
|
boolean |
supportsSchemasInProcedureCalls()
Determines whether a procedure call statement may be contain in a schema name.
|
boolean |
supportsSchemasInTableDefinitions()
Determines whether a schema name can be used in a table definition statement.
|
boolean |
supportsSelectForUpdate()
Determines whether the
SELECT FOR UPDATE statement is supported. |
boolean |
supportsStatementPooling()
Determines whether statement pooling is supported.
|
boolean |
supportsStoredFunctionsUsingCallSyntax()
Determine if this database supports invoking user-defined or vendor
functions using the stored procedure escape syntax.
|
boolean |
supportsStoredProcedures()
Determines whether stored procedure calls using the stored procedure
escape syntax is supported.
|
boolean |
supportsSubqueriesInComparisons()
Determines whether subqueries in comparison expressions are supported.
|
boolean |
supportsSubqueriesInExists()
Determines whether subqueries in
EXISTS expressions are supported. |
boolean |
supportsSubqueriesInIns()
Determines whether subqueries in
IN statements are supported. |
boolean |
supportsSubqueriesInQuantifieds()
Determines whether subqueries in quantified expressions are supported.
|
boolean |
supportsTableCorrelationNames()
Determines whether the database has table correlation names support.
|
boolean |
supportsTransactionIsolationLevel(int level)
Determines whether a specified transaction isolation level is supported.
|
boolean |
supportsTransactions()
Determines whether transactions are supported.
|
boolean |
supportsUnion()
Determines whether the
SQL UNION operation is supported. |
boolean |
supportsUnionAll()
Determines whether the
SQL UNION ALL operation is supported. |
boolean |
updatesAreDetected(int type)
Determines whether the method
ResultSet.rowUpdated can detect a visible
row update for the specified ResultSet type. |
boolean |
usesLocalFilePerTable()
Determines whether this database uses a file for each table.
|
boolean |
usesLocalFiles()
Determines whether this database uses a local file to store tables.
|
isWrapperFor, unwrap
static final short attributeNoNulls
NULL
values.static final short attributeNullable
NULL
values are definitely permitted.static final short attributeNullableUnknown
NULL
values are permitted is unknown.static final int bestRowNotPseudo
static final int bestRowPseudo
static final int bestRowSession
static final int bestRowTemporary
static final int bestRowTransaction
static final int bestRowUnknown
static final int columnNoNulls
NULL
values.static final int columnNullable
NULL
values.static final int columnNullableUnknown
static final int importedKeyCascade
UPDATE_RULE
, states that when the primary key is
updated, the foreign key (imported key) is changed accordingly.static final int importedKeyInitiallyDeferred
static final int importedKeyInitiallyImmediate
IMMEDIATE
.static final int importedKeyNoAction
UPDATE_RULE
and DELETE_RULE
, states that
if the primary key has been imported, it cannot be updated or deleted.static final int importedKeyNotDeferrable
DEFERRED
.static final int importedKeyRestrict
UPDATE_RULE
.static final int importedKeySetDefault
UPDATE_RULE
and DELETE_RULE
columns.static final int importedKeySetNull
NULL
. Applies to the UPDATE_RULE
and DELETE_RULE
columns.static final int procedureColumnIn
IN
type parameters.static final int procedureColumnInOut
INOUT
type parameters.static final int procedureColumnOut
OUT
type parameters.static final int procedureColumnResult
static final int procedureColumnReturn
static final int procedureColumnUnknown
static final int procedureNoNulls
NULL
values are not permitted.static final int procedureNoResult
static final int procedureNullable
NULL
values are permitted.static final int procedureNullableUnknown
NULL
values are permitted.static final int procedureResultUnknown
static final int procedureReturnsResult
static final int sqlStateSQL99
SQLSTATE
value.static final int sqlStateXOpen
CLI SQLSTATE
value as defined by
the X/Open standard.static final short tableIndexClustered
static final short tableIndexHashed
static final short tableIndexOther
static final short tableIndexStatistic
static final int typeNoNulls
NULL
value is NOT permitted for
this data type.static final int typeNullable
NULL
value is permitted for this data type.static final int typeNullableUnknown
NULL
value is permitted for
this data type.static final int typePredBasic
WHERE
statements
with a LIKE
clause.static final int typePredChar
WHERE...LIKE
statement.static final int typePredNone
static final int typeSearchable
static final int versionColumnNotPseudo
static final int versionColumnPseudo
static final int versionColumnUnknown
static final int sqlStateSQL
static final int functionColumnIn
static final int functionColumnInOut
static final int functionColumnOut
static final int functionReturn
static final int functionColumnUnknown
static final int functionColumnResult
static final int functionNoNulls
static final int functionNullable
static final int functionNullableUnknown
static final int functionResultUnknown
static final int functionNoTable
static final int functionReturnsTable
boolean allProceduresAreCallable() throws SQLException
getProcedures(java.lang.String, java.lang.String, java.lang.String)
can be
called by the current user.true
if all procedures can be called by the current user,
false
otherwise.SQLException
- if there is a database error.boolean allTablesAreSelectable() throws SQLException
getTables
can be used
by the current user in a SELECT
statement.true
if all the tables can be used,false
otherwise.SQLException
- if there is a database error.boolean dataDefinitionCausesTransactionCommit() throws SQLException
commit
of the transaction.true
if the statement forces a commit, false
otherwise.SQLException
- if there is a database error.boolean dataDefinitionIgnoredInTransactions() throws SQLException
true
if the database ignores a data definition statement,
false
otherwise.SQLException
- if there is a database error.boolean deletesAreDetected(int type) throws SQLException
ResultSet.rowDeleted()
.type
- the type of the ResultSet
involved: ResultSet.TYPE_FORWARD_ONLY
, ResultSet.TYPE_SCROLL_INSENSITIVE
, or ResultSet.TYPE_SCROLL_SENSITIVE
true
if the visible row delete can be detected, false
otherwise.SQLException
- if there is a database error.boolean doesMaxRowSizeIncludeBlobs() throws SQLException
getMaxRowSize
includes the
SQL data types LONGVARCHAR
and LONGVARBINARY
.true
if the return value includes LONGVARBINARY
and LONGVARCHAR
, otherwise false
.SQLException
- if there is a database error.ResultSet getAttributes(String catalog, String schemaPattern, String typeNamePattern, String attributeNamePattern) throws SQLException
ResultSet
describing a subset of the attributes of a
specified SQL User Defined Type (UDT) for a specified schema and catalog.
The subset is determined by restricting to those attributes whose
name matches the attributeNamePattern
and whose type name
matches the typeNamePattern
. Each row of the ResultSet
describes one attribute, and the rows are ordered by the columns TYPE_SCHEM
,
TYPE_NAME
and ORDINAL_POSITION
. Inherited attributes
are not included.
The columns of the returned ResultSet
object have the following
names and meanings:
TYPE_CAT
- String - the type catalog name (possibly null
)TYPE_SCHEM
- String - the type schema name (possibly null
)TYPE_NAME
- String - the type nameATTR_NAME
- String - the attribute nameDATA_TYPE
- int - the attribute type as defined in java.sql.Types
ATTR_TYPE_NAME
- String - the attribute type name. This
depends on the data source. For a UDT
the name is fully
qualified. For a REF
it is both fully qualified and represents
the target type of the reference.ATTR_SIZE
- int - the column size. When referring to char and
date types this value is the maximum number of characters. When referring
to numeric types is is the precision.DECIMAL_DIGITS
- int - how many fractional digits are
supportedNUM_PREC_RADIX
- int - numeric values radixNULLABLE
- int - whether NULL
is permitted:
NULL
values not permittedNULL
values definitely
permittedREMARKS
- String - a comment describing the attribute
(possibly null
)null
)SQL_DATA_TYPE
- int - not usedCHAR
types, the max number of
bytes in the column"NO"
= the column does not allow NULL
s, "YES"
= the column allows NULL
s, "" = status unknownSCOPE_CATALOG
- String - if the DATA_TYPE
is REF
,
this gives the catalog of the table corresponding to the attribute's scope.
NULL if the DATA_TYPE
is not REF.SCOPE_SCHEMA
- String - if the DATA_TYPE
is REF
,
this gives the schema of the table corresponding to the attribute's scope.
NULL if the DATA_TYPE
is not REF.SCOPE_TABLE
- String - if the DATA_TYPE
is REF
,
this gives the name of the table corresponding to the attribute's scope.
NULL if the DATA_TYPE
is not REF.SOURCE_DATA_TYPE
- String - The source type for a user
generated REF type or for a Distinct type. (NULL
if DATA_TYPE
is not DISTINCT or a user generated REF)catalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schemaPattern
- a schema name pattern. null
is used to imply no
narrowing of the search by a schema name. Otherwise, the name
must match a schema name in the database, with "" used to
retrieve those without a schema name.typeNamePattern
- a type name. This pattern must match the type name stored in
the database.attributeNamePattern
- an Attribute name. This pattern must match the attribute name as stored in
the database.ResultSet
, where each row is an attribute description.SQLException
- if there is a database error.ResultSet getBestRowIdentifier(String catalog, String schema, String table, int scope, boolean nullable) throws SQLException
SCOPE
(see below).
The results are returned as a table, with one entry for each column, as follows:
SCOPE
- short - the SCOPE
of the result, as follows:
DatabaseMetaData.bestRowTemporary
- the result is very temporary,
only valid while on the current rowDatabaseMetaData.bestRowTransaction
- the result is good for remainder of
current transactionDatabaseMetaData.bestRowSession
- the result is good for remainder of
database sessionCOLUMN_NAME
- String - the column nameDATA_TYPE
- int - the Type of the data, as defined in java.sql.Types
TYPE_NAME
- String - the Name of the type - database dependent.
For UDT types the name is fully qualifiedCOLUMN_SIZE
- int - the precision of the data in the columnBUFFER_LENGTH
- int - not usedDECIMAL_DIGITS
- short - number of fractional digitsPSEUDO_COLUMN
- short - whether this is a pseudo column (e.g.
an Oracle ROWID
):
DatabaseMetaData.bestRowUnknown
- it is not known whether this is
a pseudo columnDatabaseMetaData.bestRowNotPseudo
- the column is not pseudoDatabaseMetaData.bestRowPseudo
- the column is a pseudo columncatalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schema
- a schema name pattern. null
is used to imply no
narrowing of the search by schema name. Otherwise, the name
must match a schema name in the database, with "" used to
retrieve those without a schema name.table
- the table name. This must match the name of the table as
declared in the database.scope
- the SCOPE
of interest, values as defined above.nullable
- true
= include columns that are nullable, false
= do not include nullable columns.ResultSet
where each row is a description of a column
and the complete set of rows is the optimal set for this table.SQLException
- if there is a database error.ResultSet getCatalogs() throws SQLException
ResultSet
containing the catalog names, with each row
containing one catalog name (as a String
) in the
single column named TABLE_CAT
.SQLException
- if there is a database error.String getCatalogSeparator() throws SQLException
SQLException
- if there is a database error.String getCatalogTerm() throws SQLException
SQLException
- if there is a database error.ResultSet getColumnPrivileges(String catalog, String schema, String table, String columnNamePattern) throws SQLException
The description is returned as a ResultSet
with rows of data for
each access right, with columns as follows:
TABLE_CAT
- String - the catalog name (possibly null
)TABLE_SCHEM
- String - the schema name (possibly null
)TABLE_NAME
- String - the table nameCOLUMN_NAME
- String - the Column nameGRANTOR
- String - the grantor of access (possibly null
)PRIVILEGE
- String - Access right - one of SELECT, INSERT,
UPDATE, REFERENCES,...IS_GRANTABLE
- String - "YES"
implies that the
receiver can grant access to others, "NO"
if the receiver cannot
grant access to others, null
if unknown.catalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schema
- a schema name pattern. null
is used to imply no
narrowing of the search by schema name. Otherwise, the name
must match a schema name in the database, with "" used to
retrieve those without a schema name.table
- the table name. This must match the name of the table as
declared in the database.columnNamePattern
- the column name. This must match the name of a column in the
table in the database.ResultSet
containing the access rights, one row for
each privilege description.SQLException
- if there is a database error.ResultSet getColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern) throws SQLException
The descriptions are returned as a ResultSet
conforming to the
following data layout, with one row per table column:
TABLE_CAT
- String - the catalog name (possibly null
)TABLE_SCHEM
- String - the schema name (possibly null
)TABLE_NAME
- String - the table nameCOLUMN_NAME
- String - the column nameDATA_TYPE
- int - the SQL type as specified in java.sql.Types
TYPE_NAME
- String - the name of the data type, (database-dependent,
UDT names are fully qualified)COLUMN_SIZE
- int - the column size (the precision for numeric
types, max characters for char
and date
types)BUFFER_LENGTH
- int - Not usedDECIMAL_DIGITS
- int - maximum number of fractional digitsNUM_PREC_RADIX
- int - the radix for numerical typesNULLABLE
- int - whether the column allows null
s:
NULL
sNULL
sNULL
statusREMARKS
- String - A description of the column (possibly
null
)COLUMN_DEF
- String - Default value for the column (possibly
null
)SQL_DATA_TYPE
- int - not usedSQL_DATETIME_SUB
- int - not usedCHAR_OCTET_LENGTH
- int - maximum number of bytes in the
char
type columnsORDINAL_POSITION
- int - the column index in the table (1 based)IS_NULLABLE
- String - "NO"
= column does not allow
NULLs, "YES"
= column allows NULLs, "" = NULL
status
unknownSCOPE_CATALOG
- String - if the DATA_TYPE
is REF
,
this gives the catalog of the table corresponding to the attribute's scope.
NULL if the DATA_TYPE
is not REF.SCOPE_SCHEMA
- String - if the DATA_TYPE
is REF
,
this gives the schema of the table corresponding to the attribute's scope.
NULL if the DATA_TYPE
is not REF.SCOPE_TABLE
- String - if the DATA_TYPE
is REF
,
this gives the name of the table corresponding to the attribute's scope.
NULL if the DATA_TYPE
is not REF.SOURCE_DATA_TYPE
- String - The source type for a user
generated REF type or for a Distinct type. (NULL
if DATA_TYPE
is not DISTINCT or a user generated REF)catalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schemaPattern
- a schema name pattern. null
is used to imply no
narrowing of the search by schema name. Otherwise, the name
must match a schema name in the database, with "" used to
retrieve those without a schema name.tableNamePattern
- the table name. This must match the name of the table as
declared in the database.columnNamePattern
- the column name. This must match the name of a column in the
table in the database.ResultSet
with rows in the form
defined above.SQLException
- if there is a database error.Connection getConnection() throws SQLException
SQLException
- if there is a database error.ResultSet getCrossReference(String primaryCatalog, String primarySchema, String primaryTable, String foreignCatalog, String foreignSchema, String foreignTable) throws SQLException
The descriptions are returned as a ResultSet
with one row for
each foreign key, with the following layout:
PKTABLE_CAT
- String - from the primary key table : Catalog
(possibly null
)PKTABLE_SCHEM
- String - from the primary key table : Schema
(possibly null
)PKTABLE_NAME
- String - from the primary key table : namePKCOLUMN_NAME
- String - from the primary key column : nameFKTABLE_CAT
- String - from the foreign key table : the
catalog name being exported (possibly null
)FKTABLE_SCHEM
- String - from the foreign key table : the schema name
being exported (possibly null
)FKTABLE_NAME
- String - from the foreign key table : the name being
exportedFKCOLUMN_NAME
- String - from the foreign key column : the name being
exportedKEY_SEQ
- short - the sequence number (in the foreign key)UPDATE_RULE
- short - a value giving the rule for how to treat the corresponding foreign key when a primary
key is updated:
DatabaseMetaData.importedKeyNoAction
- don't allow the
primary key to be updated if it is imported as a foreign keyDatabaseMetaData.importedKeyCascade
- change the imported key to
match the updated primary keyDatabaseMetaData.importedKeySetNull
- set the imported key to
null
DatabaseMetaData.importedKeySetDefault
- set the imported key
to its default valueDatabaseMetaData.importedKeyRestrict
- same as importedKeyNoAction
DELETE_RULE
- short - a value giving the rule for how to treat the foreign key when the corresponding primary
key is deleted:
DatabaseMetaData.importedKeyNoAction
- don't allow the
primary key to be deleted if it is imported as a foreign keyDatabaseMetaData.importedKeyCascade
- delete those rows that
import a deleted keyDatabaseMetaData.importedKeySetNull
- set the imported key to
null
DatabaseMetaData.importedKeySetDefault
- set the imported key
to its default valueDatabaseMetaData.importedKeyRestrict
- same as
importedKeyNoActionFK_NAME
- String - the foreign key name (possibly null
)PK_NAME
- String - the primary key name (possibly null
)DEFERRABILITY
- short - whether foreign key constraints can be
deferred until commit (see the SQL92 specification for definitions):
DatabaseMetaData.importedKeyInitiallyDeferred
DatabaseMetaData.importedKeyInitiallyImmediate
DatabaseMetaData.importedKeyNotDeferrable
primaryCatalog
- a catalog name for the primary key table. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.primarySchema
- a schema name for the primary key table. null
is used to imply no narrowing of
the search by schema name. Otherwise, the name must match a
schema name in the database, with "" used to retrieve those
without a schema name.primaryTable
- the name of the table which exports the key. It must match the
name of the table in the database.foreignCatalog
- a catalog name for the foreign key table. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.foreignSchema
- a schema name for the foreign key table. null
is used to imply no narrowing of
the search by schema name. Otherwise, the name must match a
schema name in the database, with "" used to retrieve those
without a schema name.foreignTable
- the name of the table importing the key. It must match the
name of the table in the database.ResultSet
containing rows with the descriptions of the
foreign keys laid out according to the format defined above.SQLException
- if there is a database error.int getDatabaseMajorVersion() throws SQLException
SQLException
- a database error occurred.int getDatabaseMinorVersion() throws SQLException
SQLException
- a database error occurred.String getDatabaseProductName() throws SQLException
String
with the name of the database software.SQLException
- a database error occurred.String getDatabaseProductVersion() throws SQLException
String
with the version number of the database
software.SQLException
- a database error occurred.int getDefaultTransactionIsolation() throws SQLException
TRANSACTION_NONE
TRANSACTION_READ_COMMITTED
TRANSACTION_READ_UNCOMMITTED
TRANSACTION_REPEATABLE_READ
TRANSACTION_SERIALIZABLE
SQLException
- a database error occurred.int getDriverMajorVersion()
int getDriverMinorVersion()
String getDriverName() throws SQLException
String
containing the name of the JDBC driverSQLException
- a database error occurred.String getDriverVersion() throws SQLException
String
containing the complete version number of the
JDBC driver.SQLException
- a database error occurred.ResultSet getExportedKeys(String catalog, String schema, String table) throws SQLException
The list is returned as a ResultSet
with a row for each of the
foreign key columns, ordered by FKTABLE_CAT
, FKTABLE_SCHEM
, FKTABLE_NAME
, and KEY_SEQ
, with the
format for each row being:
PKTABLE_CAT
- String - from the primary key table : the catalog (possibly
null
)PKTABLE_SCHEM
- String - from the primary key table : the schema (possibly
null
)PKTABLE_NAME
- String - from the primary key table : the namePKCOLUMN_NAME
- String - from the primary key column : the nameFKTABLE_CAT
- String - from the foreign key table : the catalog name being
exported (possibly null
)FKTABLE_SCHEM
- String - from the foreign key table : the schema name
being exported (possibly null
)FKTABLE_NAME
- String - from the foreign key table : the name being
exportedFKCOLUMN_NAME
- String - from the foreign key column : the name being
exportedKEY_SEQ
- short - the sequence number (in the foreign key)UPDATE_RULE
- short - a value giving the rule for how to treat the foreign key when the corresponding primary
key is updated:
DatabaseMetaData.importedKeyNoAction
- don't allow the
primary key to be updated if it is imported as a foreign keyDatabaseMetaData.importedKeyCascade
- change the imported key to
match the primary key updateDatabaseMetaData.importedKeySetNull
- set the imported key to
null
DatabaseMetaData.importedKeySetDefault
- set the imported key
to its default valueDatabaseMetaData.importedKeyRestrict
- same as
importedKeyNoActionDELETE_RULE
- short - how to treat the foreign key when the corresponding primary
key is deleted:
DatabaseMetaData.importedKeyNoAction
- don't allow the
primary key to be deleted if it is imported as a foreign keyDatabaseMetaData.importedKeyCascade
- the deletion should
also delete rows that import a deleted keyDatabaseMetaData.importedKeySetNull
- the deletion sets the
imported key to null
DatabaseMetaData.importedKeySetDefault
- the deletion sets the
imported key to its default valueDatabaseMetaData.importedKeyRestrict
- same as
importedKeyNoActionFK_NAME
- String - the foreign key name (possibly null
)PK_NAME
- String - the primary key name (possibly null
)DEFERRABILITY
- short - defines whether the foreign key
constraints can be deferred until commit (see the SQL92 specification for
definitions):
DatabaseMetaData.importedKeyInitiallyDeferred
DatabaseMetaData.importedKeyInitiallyImmediate
DatabaseMetaData.importedKeyNotDeferrable
catalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schema
- a schema name. null
is used to imply no narrowing of
the search by schema name. Otherwise, the name must match a
schema name in the database, with "" used to retrieve those
without a schema name.table
- a table name, which must match the name of a table in the
databaseResultSet
containing a row for each of the foreign key
columns, as defined aboveSQLException
- a database error occurredString getExtraNameCharacters() throws SQLException
a-z
, A-Z
, 0-9
and _
are always permitted.SQLException
- a database error occurred.String getIdentifierQuoteString() throws SQLException
SQLException
- a database error occurred.ResultSet getImportedKeys(String catalog, String schema, String table) throws SQLException
The list returned is a ResultSet
with a row entry for each
primary key column, ordered by PKTABLE_CAT
, PKTABLE_SCHEM
,
PKTABLE_NAME
, and KEY_SEQ
, with the following format:
PKTABLE_CAT
- String - primary key catalog name being
imported (possibly null
)PKTABLE_SCHEM
- String - primary key schema name being
imported (possibly null
)PKTABLE_NAME
- String - primary key table name being imported
PKCOLUMN_NAME
- String - primary key column name being
importedFKTABLE_CAT
- String - foreign key table catalog name
(possibly null
)FKTABLE_SCHEM
- String - foreign key table schema name
(possibly null
)FKTABLE_NAME
- String - foreign key table nameFKCOLUMN_NAME
- String - foreign key column nameKEY_SEQ
- short - sequence number (in the foreign key)UPDATE_RULE
- short - how to treat the foreign key when the corresponding primary
key is updated:
DatabaseMetaData.importedKeyNoAction
- don't allow any update of
the primary key if it is imported as a foreign keyDatabaseMetaData.importedKeyCascade
- change imported key to
match the primary key updateDatabaseMetaData.importedKeySetNull
- set the imported key to
null
DatabaseMetaData.importedKeySetDefault
- set the imported key
to its default valueDatabaseMetaData.importedKeyRestrict
- same as
importedKeyNoActionDELETE_RULE
- short - how to treat the foreign key when the corresponding primary
key is deleted:
DatabaseMetaData.importedKeyNoAction
- don't allow the primary key to be deleted
if it is imported as a foreign keyDatabaseMetaData.importedKeyCascade
- delete those rows that
import a deleted keyDatabaseMetaData.importedKeySetNull
- set the imported key to
null
DatabaseMetaData.importedKeySetDefault
- set the imported key
to its default valueDatabaseMetaData.importedKeyRestrict
- same as importedKeyNoAction
FK_NAME
- String - foreign key name (possibly null
)PK_NAME
- String - primary key name (possibly null
)DEFERRABILITY
- short - defines whether foreign key
constraints can be deferred until commit (see SQL92 specification for
definitions):
DatabaseMetaData.importedKeyInitiallyDeferred
DatabaseMetaData.importedKeyInitiallyImmediate
DatabaseMetaData.importedKeyNotDeferrable
catalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schema
- a schema name. null
is used to imply no narrowing of
the search by schema name. Otherwise, the name must match a
schema name in the database, with "" used to retrieve those
without a schema name.table
- a table name, which must match the name of a table in the
database.ResultSet
containing the list of primary key columns as
rows in the format defined above.SQLException
- a database error occurred.ResultSet getIndexInfo(String catalog, String schema, String table, boolean unique, boolean approximate) throws SQLException
The list is returned as a ResultSet
, with one row for each index
or statistic. The list is ordered by NON_UNIQUE
, TYPE
,
INDEX_NAME
, and ORDINAL_POSITION
. Each row has the
following format:
TABLE_CAT
- String - table catalog name (possibly null
)TABLE_SCHEM
- String - table schema name (possibly null
)TABLE_NAME
- String - The table nameNON_UNIQUE
- boolean - true
when index values can be
non-unique. Must be false
when the TYPE is tableIndexStatisticINDEX_QUALIFIER
- String : index catalog name. null
when the TYPE is 'tableIndexStatistic'INDEX_NAME
- String : index name. null
when TYPE is
'tableIndexStatistic'TYPE
- short - the index type. One of:
DatabaseMetaData.tableIndexStatistic
- table statistics
returned with Index descriptionsDatabaseMetaData.tableIndexClustered
- a clustered IndexDatabaseMetaData.tableIndexHashed
- a hashed IndexDatabaseMetaData.tableIndexOther
- other style of IndexORDINAL_POSITION
- short - column sequence within Index. 0
when TYPE is tableIndexStatisticCOLUMN_NAME
- String - the column name. null
when
TYPE is tableIndexStatisticASC_OR_DESC
- String - column sort sequence. null
if
sequencing not supported or TYPE is tableIndexStatistic; otherwise "A"
means sort ascending and "D" means sort descending.CARDINALITY
- int - Number of unique values in the Index. If
TYPE is tableIndexStatistic, this is number of rows in the table.PAGES
- int - Number of pages for current Index. If TYPE is
tableIndexStatistic, this is number of pages used for the table.FILTER_CONDITION
- String - Filter condition. (possibly null)
catalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schema
- a schema name. null
is used to imply no narrowing of
the search by schema name. Otherwise, the name must match a
schema name in the database, with "" used to retrieve those
without a schema name.table
- a table name, which must match the name of a table in the
database.unique
- true
means only return indices for unique values,
false
implies that they can be returned even if not
unique.approximate
- true
implies that the list can contain approximate or
"out of data" values, false
implies that all values
must be precisely accurateResultSet
containing the list of indices and statistics
for the table, in the format defined above.SQLException
- a database error occurred.int getJDBCMajorVersion() throws SQLException
SQLException
- a database error occurred.int getJDBCMinorVersion() throws SQLException
SQLException
- a database error occurred.int getMaxBinaryLiteralLength() throws SQLException
SQLException
- a database error occurred.int getMaxCatalogNameLength() throws SQLException
SQLException
- a database error occurred.int getMaxCharLiteralLength() throws SQLException
SQLException
- a database error occurred.int getMaxColumnNameLength() throws SQLException
SQLException
- a database error occurred.int getMaxColumnsInGroupBy() throws SQLException
GROUP BY
clause for this
database.GROUP BY
clause. If
the limit is unknown, or the value is unlimited, then the result
is zero.SQLException
- a database error occurred.int getMaxColumnsInIndex() throws SQLException
SQLException
- a database error occurred.int getMaxColumnsInOrderBy() throws SQLException
ORDER BY
clause for
this database.ORDER BY
clause. If
the limit is unknown, or the value is unlimited, then the result
is zero.SQLException
- a database error occurred.int getMaxColumnsInSelect() throws SQLException
SELECT
list for this
database.SELECT
list. If the
limit is unknown, or the value is unlimited, then the result is
zero.SQLException
- a database error occurred.int getMaxColumnsInTable() throws SQLException
SQLException
- a database error occurred.int getMaxConnections() throws SQLException
SQLException
- a database error occurred.int getMaxCursorNameLength() throws SQLException
SQLException
- a database error occurred.int getMaxIndexLength() throws SQLException
SQLException
- a database error occurred.int getMaxProcedureNameLength() throws SQLException
SQLException
- a database error occurred.int getMaxRowSize() throws SQLException
SQLException
- a database error occurred.int getMaxSchemaNameLength() throws SQLException
SQLException
- a database error occurred.int getMaxStatementLength() throws SQLException
SQLException
- a database error occurred.int getMaxStatements() throws SQLException
SQLException
- a database error occurred.int getMaxTableNameLength() throws SQLException
SQLException
- a database error occurred.int getMaxTablesInSelect() throws SQLException
SELECT
statement for the database.SELECT
statement. If the limit is unknown, or the value is unlimited,
then the result is zero.SQLException
- a database error occurred.int getMaxUserNameLength() throws SQLException
SQLException
- a database error occurred.String getNumericFunctions() throws SQLException
SQLException
- a database error occurred.ResultSet getPrimaryKeys(String catalog, String schema, String table) throws SQLException
The list is returned as a ResultSet
with one row for each primary
key column, ordered by COLUMN_NAME
, with each row having the
structure as follows:
TABLE_CAT
- String - table catalog name (possibly null)TABLE_SCHEM
- String - table schema name (possibly null)TABLE_NAME
- String - The table nameCOLUMN_NAME
- String - The column nameKEY_SEQ
- short - the sequence number for this column in the
primary keyPK_NAME
- String - the primary key name (possibly null)catalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with the empty string used
to retrieve those without a catalog name.schema
- a schema name. null
is used to imply no narrowing of
the search by schema name. Otherwise, the name must match a
schema name in the database, with the empty string used to
retrieve those without a schema name.table
- the name of a table, which must match the name of a table in
the database.ResultSet
containing the list of keys in the format
defined above.SQLException
- a database error occurred.ResultSet getProcedureColumns(String catalog, String schemaPattern, String procedureNamePattern, String columnNamePattern) throws SQLException
The list is returned as a ResultSet
with one row for each
parameter or result column. The data is ordered by PROCEDURE_SCHEM
and PROCEDURE_NAME
, while for each procedure,
the return value (if any) is first, followed by the parameters in the
order they appear in the stored procedure call, followed by ResultSet
columns in column number order. Each row has the following
structure:
PROCEDURE_CAT
- String - the procedure catalog namePROCEDURE_SCHEM
- String - the procedure schema name
(possibly null)PROCEDURE_NAME
- String - the procedure nameCOLUMN_NAME
- String - the name of the columnCOLUMN_TYPE
- short - the kind of column or parameter, as
follows:
DatabaseMetaData.procedureColumnUnknown
- type unknownDatabaseMetaData.procedureColumnIn
- an IN
parameterDatabaseMetaData.procedureColumnInOut
- an INOUT
parameterDatabaseMetaData.procedureColumnOut
- an OUT
parameterDatabaseMetaData.procedureColumnReturn
- a return valueDatabaseMetaData.procedureReturnsResult
- a result column in
a result setDATA_TYPE
- int - the SQL type of the data, as in java.sql.Types
TYPE_NAME
- String - the SQL type name, for a UDT it is fully
qualifiedPRECISION
- int - the precisionLENGTH
- int - the length of the data in bytesSCALE
- short - the scale for numeric typesRADIX
- short - the Radix for numeric data (typically 2 or
10)NULLABLE
- short - can the data contain null
:
DatabaseMetaData.procedureNoNulls
- NULL
s not
permittedDatabaseMetaData.procedureNullable
- NULL
s are
permittedDatabaseMetaData.procedureNullableUnknown
- NULL
status unknownREMARKS
- String - an explanatory comment about the data item
catalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schemaPattern
- a schema name pattern. null
is used to imply no
narrowing of the search by schema name. Otherwise, the name
must match a schema name in the database, with "" used to
retrieve those without a schema name.procedureNamePattern
- a pattern that must match the name of the procedure stored in
the database.columnNamePattern
- a column name pattern. The name must match the column name
stored in the database.ResultSet
with the list of parameter and result columns
in the format defined above.SQLException
- a database error occurred.ResultSet getProcedures(String catalog, String schemaPattern, String procedureNamePattern) throws SQLException
The list is returned as a ResultSet
with one row for each stored
procedure, ordered by PROCEDURE_SCHEM and PROCEDURE_NAME, with the data
in each row as follows:
PROCEDURE_CAT
- String : the procedure catalog namePROCEDURE_SCHEM
- String : the procedure schema name
(possibly null
)PROCEDURE_NAME
- String : the procedure nameReserved
Reserved
Reserved
REMARKS
- String - information about the procedurePROCEDURE_TYPE
- short : one of:
DatabaseMetaData.procedureResultUnknown
- procedure may
return a resultDatabaseMetaData.procedureNoResult
- procedure does not
return a resultDatabaseMetaData.procedureReturnsResult
- procedure
definitely returns a resultcatalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schemaPattern
- a schema name pattern. null
is used to imply no
narrowing of the search by schema name. Otherwise, the name
must match a schema name in the database, with "" used to
retrieve those without a schema name.procedureNamePattern
- a procedure name pattern, which must match the procedure name
stored in the database.ResultSet
where each row is a description of a stored
procedure in the format defined above.SQLException
- a database error occurred.String getProcedureTerm() throws SQLException
SQLException
- a database error occurred.int getResultSetHoldability() throws SQLException
ResultSet.HOLD_CURSORS_OVER_COMMIT
or ResultSet.CLOSE_CURSORS_AT_COMMIT
.SQLException
- a database error occurred.ResultSet getSchemas() throws SQLException
ResultSet
, ordered by the schema name, with one row per
schema in the following format:
TABLE_SCHEM
- String - the schema nameTABLE_CATALOG
- String - the catalog name (possibly null
) ResultSet
with one row for each schema in the format
defined above.SQLException
- a database error occurred.String getSchemaTerm() throws SQLException
SQLException
- a database error occurred.String getSearchStringEscape() throws SQLException
'_'
and '%'
wildcard
characters in catalog search pattern strings. '_'
is used to represent any single
character while '%'
is used for a sequence of zero or more
characters.SQLException
- a database error occurred.String getSQLKeywords() throws SQLException
SQLException
- a database error occurred.int getSQLStateType() throws SQLException
SQLState
value returned by SQLException.getSQLState
. This can either be the X/Open (now known as
Open Group) SQL CLI form or the SQL99 form.DatabaseMetaData.sqlStateSQL99
or DatabaseMetaData.sqlStateXOpen
.SQLException
- a database error occurred.String getStringFunctions() throws SQLException
SQLException
- a database error occurred.ResultSet getSuperTables(String catalog, String schemaPattern, String tableNamePattern) throws SQLException
The listing only contains entries for tables that have a super table.
Super tables and corresponding subtables must be defined in the same catalog and schema. The
list is returned as a ResultSet
, with one row for each table that
has a super table, in the following format:
TABLE_CAT
- String - table catalog name (possibly null
)TABLE_SCHEM
- String - Table schema name (possibly null
)TABLE_NAME
- String - The table nameTABLE_NAME
- String - The super table namecatalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schemaPattern
- a schema name pattern. null
is used to imply no
narrowing of the search by schema name. Otherwise, the name
must match a schema name in the database, with "" used to
retrieve those without a schema name.tableNamePattern
- a table name, which should match the table name as stored in
the database. it may be a fully qualified name. If it is fully
qualified the catalog name and schema name parameters are
ignored.ResultSet
with one row for each table which has a super
table, in the format defined above. An empty ResultSet
is
returned if the database does not support table hierarchies.SQLException
- a database error occurred.ResultSet getSuperTypes(String catalog, String schemaPattern, String typeNamePattern) throws SQLException
The listing is returned as a ResultSet
where there is one row for
a specific UDT which describes its supertype, with the data organized in
columns as follows:
TYPE_CAT
- String - the UDT catalog name (possibly null
)TYPE_SCHEM
- String - the UDT schema name (possibly null
)TYPE_NAME
- String - the UDT type nameTYPE_CAT
- String - direct supertype's catalog name
(possibly null
)TYPE_SCHEM
- String - direct supertype's schema name
(possibly null
)TYPE_NAME
- String - direct supertype's namecatalog
- the catalog name. "" means get the UDTs without a catalog.
null
means don't use the catalog name to restrict the
search.schemaPattern
- the Schema pattern name. "" means get the UDT's without a
schema.typeNamePattern
- the UDT name pattern. This may be a fully qualified name. When
a fully qualified name is specified, the catalog name and
schema name parameters are ignored.ResultSet
in which each row gives information about a
particular UDT in the format defined above. An empty ResultSet is
returned for a database that does not support type hierarchies.SQLException
- a database error occurred.String getSystemFunctions() throws SQLException
SQLException
- a database error occurred.ResultSet getTablePrivileges(String catalog, String schemaPattern, String tableNamePattern) throws SQLException
The privileges are returned as a ResultSet
, with one row for each
privilege, ordered by TABLE_SCHEM
, TABLE_NAME
, PRIVILEGE
, and each row has data as defined in the following column
definitions:
TABLE_CAT
- String - table catalog name (possibly null
)TABLE_SCHEM
- String - Table schema name (possibly null
)TABLE_NAME
- String - The table name"YES"
implies the grantee can grant
access to others, "NO"
implies guarantee cannot grant access to
others, null
means this status is unknowncatalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schemaPattern
- a schema name pattern. null
is used to imply no
narrowing of the search by schema name. Otherwise, the name
must match a schema name in the database, with "" used to
retrieve those without a schema name.tableNamePattern
- a Table Name, which should match the table name as stored in
the database.ResultSet
containing a list with one row for each table
in the format defined above.SQLException
- a database error occurred.ResultSet getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types) throws SQLException
The descriptions are returned as rows in a ResultSet
, one row for
each Table. The ResultSet is ordered by TABLE_TYPE
, TABLE_SCHEM
and TABLE_NAME
. Each row in the ResultSet consists
of a series of columns as follows:
TABLE_CAT
- String - table catalog name (possibly null
)TABLE_SCHEM
- String - Table schema name (possibly null
)TABLE_NAME
- String - The table nameTABLE_TYPE
- String - Typical names include "TABLE", "VIEW",
"SYSTEM TABLE", "ALIAS", "SYNONYM", "GLOBAL TEMPORARY"REMARKS
- String - A comment describing the tableTYPE_CAT
- String - the 'Types' catalog(possibly null
)TYPE_SCHEM
- String - the 'Types' schema(possibly null
)TYPE_NAME
- String - the 'Types' name (possibly null
)
SELF_REFERENCING_COL_NAME
- String - the name of a designated
identifier column in a typed table (possibly null
)SELF_REFERENCING_COL_NAME
are created (possibly null
)catalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schemaPattern
- a schema name pattern. null
is used to imply no
narrowing of the search by schema name. Otherwise, the name
must match a schema name in the database, with "" used to
retrieve those without a schema name.tableNamePattern
- a table name, which should match the table name as stored in
the database.types
- a list of table types to include in the list. null
implies list all types.ResultSet
with one row per table in the format defined
above.SQLException
- a database error occurred.ResultSet getTableTypes() throws SQLException
The list is returned as a ResultSet
with one row per table type,
ordered by the table type. The information in the ResultSet
is
structured into a single column per row, as follows:
TABLE_TYPE
- String - the table type. Typical names include
"TABLE"
, "VIEW"
, "SYSTEM TABLE"
, "ALIAS"
,
"SYNONYM"
, "GLOBAL TEMPORARY"
ResultSet
with one row per table type in the format
defined above.SQLException
- a database error occurred.String getTimeDateFunctions() throws SQLException
SQLException
- a database error occurred.ResultSet getTypeInfo() throws SQLException
ResultSet
, with one row for each type, ordered
by the DATA_TYPE
value, where the data in each row is structured
into the following columns:
TYPE_NAME
- String : the type nameDATA_TYPE
- int : the SQL data type value as defined in
java.sql.Types
PRECISION
- int - the maximum precision of the typeLITERAL_PREFIX
- String : the prefix to be used when quoting
a literal value (possibly null
)LITERAL_SUFFIX
- String : the suffix to be used when quoting
a literal value (possibly null
)CREATE_PARAMS
- String : params used when creating the type
(possibly null
)NULLABLE
- short : shows if the value is nullable:
DatabaseMetaData.typeNoNulls
: NULL
s not permittedDatabaseMetaData.typeNullable
: NULL
s are permittedDatabaseMetaData.typeNullableUnknown
: NULL
status
unknownCASE_SENSITIVE
- boolean : true if the type is case sensitive
SEARCHABLE
- short : how this type can be used with WHERE
clauses:
DatabaseMetaData.typePredNone
- WHERE
clauses cannot be usedDatabaseMetaData.typePredChar
- support for WHERE...LIKE
onlyDatabaseMetaData.typePredBasic
- support except for WHERE...LIKE
DatabaseMetaData.typeSearchable
- support for all WHERE
clausesUNSIGNED_ATTRIBUTE
- boolean - the type is unsigned or notFIXED_PREC_SCALE
- boolean - fixed precision = it can be used
as a money valueAUTO_INCREMENT
- boolean - can be used as an auto-increment
valueLOCAL_TYPE_NAME
- String - a localized version of the type
name (possibly null
)MINIMUM_SCALE
- short - the minimum scale supportedMAXIMUM_SCALE
- short - the maximum scale supportedSQL_DATA_TYPE
- int - not usedSQL_DATETIME_SUB
- int - not usedNUM_PREC_RADIX
- int - number radix (typically 2 or 10)ResultSet
which is structured as described above.SQLException
- a database error occurred.ResultSet getUDTs(String catalog, String schemaPattern, String typeNamePattern, int[] types) throws SQLException
DISTINCT
, STRUCT
and
JAVA_OBJECT
.
The types matching the supplied the specified catalog, schema, type name
and type are returned as rows in a ResultSet
with columns of
information as follows:
TABLE_CAT
- String - catalog name (possibly null
)TABLE_SCHEM
- String - schema name (possibly null
)TABLE_NAME
- String - The table nameCLASS_NAME
- String - The Java class nameDATA_TYPE
- int - The SQL type as specified in java.sql.Types
. One of DISTINCT, STRUCT, and JAVA_OBJECTREMARKS
- String - A comment which describes the typeBASE_TYPE
- short - A type code. For a DISTINCT type, the
source type. For a structured type this is the type that implements the
user generated reference type of the SELF_REFERENCING_COLUMN
.
This is defined in java.sql.Types
, and will be null
if
the DATA_TYPE
does not match these criteria.
If the driver does not support UDTs, the ResultSet
is empty.
catalog
- a catalog name. null
is used to imply no narrowing of
the search by catalog name. Otherwise, the name must match a
catalog name held in the database, with "" used to retrieve
those without a catalog name.schemaPattern
- a schema name pattern. null
is used to imply no
narrowing of the search using schema name. Otherwise, the name
must match a schema name in the database, with "" used to
retrieve those without a schema name.typeNamePattern
- a type name pattern, which should match a type name as stored in the
database. It may be fully qualified.types
- a list of the UDT types to include in the list - one of
DISTINCT
, STRUCT
or JAVA_OBJECT
.ResultSet
in the format described above.SQLException
- a database error occurred.String getURL() throws SQLException
null
if it cannot be generated.SQLException
- a database error occurred.String getUserName() throws SQLException
SQLException
- a database error occurred.ResultSet getVersionColumns(String catalog, String schema, String table) throws SQLException
The result is laid-out in the following columns:
SCOPE
- short - not usedCOLUMN_NAME
- String - Column nameDATA_TYPE
- int - The SQL data type, as defined in java.sql.Types
TYPE_NAME
- String - The SQL type name, data source dependent
COLUMN_SIZE
- int - Precision for numeric typesBUFFER_LENGTH
- int - Length of a column value in bytesDECIMAL_DIGITS
- short - Number of digits after the decimal
pointPSEUDO_COLUMN
- short - If this is a pseudo-column (for
example, an Oracle ROWID
):
DatabaseMetaData.bestRowUnknown
- don't know whether this is
a pseudo columnDatabaseMetaData.bestRowNotPseudo
- column is not pseudoDatabaseMetaData.bestRowPseudo
- column is a pseudo columncatalog
- a catalog name. null
is used to imply no narrowing of
the search using catalog name. Otherwise, the name must match
a catalog name held in the database, with "" used to retrieve
those without a catalog name.schema
- a schema name pattern. null
is used to imply no
narrowing of the search using schema names. Otherwise, the
name must match a schema name in the database, with "" used to
retrieve those without a schema name.table
- a table name. It must match the name of a table in the
database.ResultSet
containing the descriptions, one row for each
column, in the format defined above.SQLException
- a database error occurred.boolean insertsAreDetected(int type) throws SQLException
ResultSet.rowInserted
.type
- the ResultSet
type. This may be one of ResultSet.TYPE_SCROLL_SENSITIVE
or ResultSet.TYPE_SCROLL_INSENSITIVE
or ResultSet.TYPE_FORWARD_ONLY
,true
if ResultSet.rowInserted
detects a visible
row insert otherwise false
.SQLException
- a database error occurred.ResultSet.rowInserted()
boolean isCatalogAtStart() throws SQLException
true
if the catalog appears at the start of a fully
qualified table name, false
otherwise.SQLException
- a database error occurred.boolean isReadOnly() throws SQLException
true
if the database is in read-only mode, false
otherwise.SQLException
- a database error occurred.boolean locatorsUpdateCopy() throws SQLException
LOB
s).true
if updates are made to a copy of the Large Object,
false
otherwise.SQLException
- a database error occurred.boolean nullPlusNonNullIsNull() throws SQLException
NULL
and
non-NULL
values by producing a NULL
output.true
if NULL
to non-NULL
concatenations
produce a NULL
result, false
otherwise.SQLException
- a database error occurred.boolean nullsAreSortedAtEnd() throws SQLException
NULL
values are always sorted to the end of sorted
results regardless of requested sort order. This means that they will
appear at the end of sorted lists whatever other non-NULL
values
may be present.true
if NULL
values are sorted at the end,
false
otherwise.SQLException
- a database error occurred.boolean nullsAreSortedAtStart() throws SQLException
NULL
values are always sorted at the start of the
sorted list, irrespective of the sort order. This means that they appear
at the start of sorted lists, whatever other values may be present.true
if NULL
values are sorted at the start,
false
otherwise.SQLException
- a database error occurred.boolean nullsAreSortedHigh() throws SQLException
NULL
values are sorted high - i.e. they are sorted
as if they are higher than any other values.true
if NULL
values are sorted high, false
otherwise.SQLException
- a database error occurred.boolean nullsAreSortedLow() throws SQLException
NULL
values are sorted low - i.e. they are sorted as
if they are lower than any other values.true
if NULL
values are sorted low, false
otherwise.SQLException
- a database error occurred.boolean othersDeletesAreVisible(int type) throws SQLException
ResultSet
type.type
- the type of the ResultSet
. It may be either ResultSet.TYPE_FORWARD_ONLY
or ResultSet.TYPE_SCROLL_INSENSITIVE
, or ResultSet.TYPE_SCROLL_SENSITIVE
)true
if others' deletes are visible, false
otherwise.SQLException
- a database error occurred.boolean othersInsertsAreVisible(int type) throws SQLException
ResultSet
type.type
- the type of the ResultSet
. May be ResultSet.TYPE_FORWARD_ONLY
, or ResultSet.TYPE_SCROLL_INSENSITIVE
, or ResultSet.TYPE_SCROLL_SENSITIVE
true
if others' inserts are visible, otherwise false
.SQLException
- a database error occurred.boolean othersUpdatesAreVisible(int type) throws SQLException
ResultSet
type.type
- the type of the ResultSet
. May be ResultSet.TYPE_FORWARD_ONLY
, or ResultSet.TYPE_SCROLL_INSENSITIVE
, or ResultSet.TYPE_SCROLL_SENSITIVE
true
if others' inserts are visible, otherwise false
.SQLException
- a database error occurred.boolean ownDeletesAreVisible(int type) throws SQLException
ResultSet
can see its own deletes, for a
specified ResultSet
type.type
- the type of the ResultSet
: ResultSet.TYPE_FORWARD_ONLY
, ResultSet.TYPE_SCROLL_INSENSITIVE
, or ResultSet.TYPE_SCROLL_SENSITIVE
true
if the deletes are seen by the ResultSet
itself, otherwise false
.SQLException
- a database error occurred.boolean ownInsertsAreVisible(int type) throws SQLException
ResultSet
can see its own inserts, for a
specified ResultSet
type.type
- the type of the ResultSet
: ResultSet.TYPE_FORWARD_ONLY
, ResultSet.TYPE_SCROLL_INSENSITIVE
, or ResultSet.TYPE_SCROLL_SENSITIVE
true
if the inserts are seen by the ResultSet
itself, otherwise false
.SQLException
- a database error occurred.boolean ownUpdatesAreVisible(int type) throws SQLException
ResultSet
can see its own updates, for a
specified ResultSet
type.type
- the type of the ResultSet
: ResultSet.TYPE_FORWARD_ONLY
, ResultSet.TYPE_SCROLL_INSENSITIVE
, or ResultSet.TYPE_SCROLL_SENSITIVE
true
if the updates are seen by the ResultSet
itself, otherwise false
.SQLException
- a database error occurred.boolean storesLowerCaseIdentifiers() throws SQLException
true
then the
database stores them in lower case.true
if unquoted SQL identifiers are stored in lower
case, false
otherwise.SQLException
- a database error occurred.boolean storesLowerCaseQuotedIdentifiers() throws SQLException
true
if quoted SQL identifiers are stored in lower case,
false
otherwise.SQLException
- a database error occurred.boolean storesMixedCaseIdentifiers() throws SQLException
true
if unquoted SQL identifiers as stored in mixed case,
false
otherwise.SQLException
- a database error occurred.boolean storesMixedCaseQuotedIdentifiers() throws SQLException
true
if quoted SQL identifiers are stored in mixed case,
false
otherwise.SQLException
- a database error occurred.boolean storesUpperCaseIdentifiers() throws SQLException
true
if unquoted SQL identifiers are stored in upper
case, false
otherwise.SQLException
- a database error occurred.boolean storesUpperCaseQuotedIdentifiers() throws SQLException
true
if quoted SQL identifiers are stored in upper case,
false
otherwise.SQLException
- a database error occurred.boolean supportsAlterTableWithAddColumn() throws SQLException
ALTER TABLE
operation with
ADD COLUMN
.true
if ALTER TABLE
with ADD COLUMN
is
supported, false
otherwise.SQLException
- a database error occurred.boolean supportsAlterTableWithDropColumn() throws SQLException
ALTER TABLE
operation with
DROP COLUMN
.true
if ALTER TABLE
with DROP COLUMN
is
supported, false
otherwise.SQLException
- a database error occurred.boolean supportsANSI92EntryLevelSQL() throws SQLException
true
if the ANSI92 entry level SQL grammar is supported,
false
otherwise.SQLException
- a database error occurred.boolean supportsANSI92FullSQL() throws SQLException
true
if the ANSI92 full SQL grammar is supported, false
otherwise.SQLException
- a database error occurred.boolean supportsANSI92IntermediateSQL() throws SQLException
true
if the ANSI92 intermediate SQL grammar is supported,
false
otherwise.SQLException
- a database error occurred.boolean supportsBatchUpdates() throws SQLException
true
if batch updates are supported, false
otherwise.SQLException
- a database error occurred.boolean supportsCatalogsInDataManipulation() throws SQLException
true
if catalog names can be used in data manipulation
statements, false
otherwise.SQLException
- a database error occurred.boolean supportsCatalogsInIndexDefinitions() throws SQLException
true
if catalog names can be used in index definition
statements, false
otherwise.SQLException
- a database error occurred.boolean supportsCatalogsInPrivilegeDefinitions() throws SQLException
true
if catalog names can be used in privilege definition
statements, false
otherwise.SQLException
- a database error occurred.boolean supportsCatalogsInProcedureCalls() throws SQLException
true
if catalog names can be used in procedure call
statements.SQLException
- a database error occurred.boolean supportsCatalogsInTableDefinitions() throws SQLException
true
if catalog names can be used in definition
statements, false
otherwise.SQLException
- a database error occurred.boolean supportsColumnAliasing() throws SQLException
If aliasing is supported, then the SQL AS clause is used to provide names for computed columns and provide alias names for columns.
true
if column aliasing is supported, false
otherwise.SQLException
- a database error occurred.boolean supportsConvert() throws SQLException
CONVERT
operation between
SQL types.true
if the CONVERT
operation is supported,
false
otherwise.SQLException
- a database error occurred.boolean supportsConvert(int fromType, int toType) throws SQLException
CONVERT
operation for two
supplied SQL types.fromType
- the Type to convert from, as defined by java.sql.Types
toType
- the Type to convert to, as defined by java.sql.Types
true
if the CONVERT
operation is supported for
these types, false
otherwise.SQLException
- a database error occurred.boolean supportsCoreSQLGrammar() throws SQLException
true
if the Core SQL Grammar is supported, false
otherwise.SQLException
- a database error occurred.boolean supportsCorrelatedSubqueries() throws SQLException
true
if the database does support correlated sub-queries
and false
otherwise.SQLException
- a database error occurred.boolean supportsDataDefinitionAndDataManipulationTransactions() throws SQLException
true
if both types of statement are permitted, false
otherwise.SQLException
- a database error occurred.boolean supportsDataManipulationTransactionsOnly() throws SQLException
true
if data manipulation statements are permitted only within a transaction,
false
otherwise.SQLException
- a database error occurred.boolean supportsDifferentTableCorrelationNames() throws SQLException
true
if correlation names must be different from table
names, false
otherwise.SQLException
- a database error occurred.boolean supportsExpressionsInOrderBy() throws SQLException
ORDER BY
lists are supported.true
if expressions in ORDER BY
lists are
supported.SQLException
- a database error occurred.boolean supportsExtendedSQLGrammar() throws SQLException
true
if the Extended SQL Grammar is supported, false
otherwise.SQLException
- a database error occurred.boolean supportsFullOuterJoins() throws SQLException
true
if full nested outer joins are supported, false
otherwise.SQLException
- a database error occurred.boolean supportsGetGeneratedKeys() throws SQLException
true
if auto generated keys can be returned, false
otherwise.SQLException
- a database error occurred.boolean supportsGroupBy() throws SQLException
GROUP BY
clauses.true
if the GROUP BY
clause is supported, false
otherwise.SQLException
- a database error occurred.boolean supportsGroupByBeyondSelect() throws SQLException
GROUP
BY
clause not included in the SELECT
statement as long as all of
the columns in the SELECT
statement are used in the GROUP
BY
clause.true
if GROUP BY
clauses can use column names in
this way, false
otherwise.SQLException
- a database error occurred.boolean supportsGroupByUnrelated() throws SQLException
GROUP
BY
clause that is not in the SELECT
statement.true
if GROUP BY
clause can use a column name not
in the SELECT
statement, false
otherwise.SQLException
- a database error occurred.boolean supportsIntegrityEnhancementFacility() throws SQLException
true
if the Integrity Enhancement Facility is supported,
false
otherwise.SQLException
- a database error occurred.boolean supportsLikeEscapeClause() throws SQLException
LIKE
escape clause.true
if LIKE escape clause is supported, false
otherwise.SQLException
- a database error occurred.boolean supportsLimitedOuterJoins() throws SQLException
true
if there is limited support for outer join
operations, false
otherwise. This will be true
if
supportsFullOuterJoins
returns true
.SQLException
- a database error occurred.boolean supportsMinimumSQLGrammar() throws SQLException
true
if the Minimum SQL Grammar is supported, false
otherwise.SQLException
- a database error occurred.boolean supportsMixedCaseIdentifiers() throws SQLException
true
if unquoted SQL identifiers are stored in mixed
case, false
otherwise.SQLException
- a database error occurred.boolean supportsMixedCaseQuotedIdentifiers() throws SQLException
true
if quoted SQL identifiers are stored in mixed case,
false
otherwise.SQLException
- a database error occurred.boolean supportsMultipleOpenResults() throws SQLException
CallableStatement
to
return multiple ResultSet
s simultaneously.true
if a single CallableStatement
can return
multiple ResultSet
s simultaneously, false
otherwise.SQLException
- a database error occurred.boolean supportsMultipleResultSets() throws SQLException
ResultSet
s from a single
call to the execute
method is supported.true
if multiple ResultSet
s can be retrieved,
false
otherwise.SQLException
- a database error occurred.boolean supportsMultipleTransactions() throws SQLException
true
if multiple open transactions are supported, false
otherwise.SQLException
- a database error occurred.boolean supportsNamedParameters() throws SQLException
true
if named parameters can be used with callable
statements, false
otherwise.SQLException
- a database error occurred.boolean supportsNonNullableColumns() throws SQLException
true
if columns can be defined non-nullable, false
otherwise.SQLException
- a database error occurred.boolean supportsOpenCursorsAcrossCommit() throws SQLException
true
if cursors can be kept open across commit
operations, false
if they might get closed.SQLException
- a database error occurred.boolean supportsOpenCursorsAcrossRollback() throws SQLException
true
if cursors can be kept open across rollback
operations, false
if they might get closed.SQLException
- a database error occurred.boolean supportsOpenStatementsAcrossCommit() throws SQLException
true
if statements can be kept open, false
if
they might not.SQLException
- a database error occurred.boolean supportsOpenStatementsAcrossRollback() throws SQLException
true
if statements can be kept open, false
if
they might not.SQLException
- a database error occurred.boolean supportsOrderByUnrelated() throws SQLException
ORDER BY
clause that is
not in the SELECT
statement is supported.true
if it is possible to ORDER
using a column
not in the SELECT
, false
otherwise.SQLException
- a database error occurred.boolean supportsOuterJoins() throws SQLException
true
if outer join operations are supported, false
otherwise.SQLException
- a database error occurred.boolean supportsPositionedDelete() throws SQLException
DELETE
statements are supported.true
if the database supports positioned DELETE
statements.SQLException
- a database error occurred.boolean supportsPositionedUpdate() throws SQLException
UPDATE
statements are supported.true
if the database supports positioned UPDATE
statements, false
otherwise.SQLException
- a database error occurred.boolean supportsResultSetConcurrency(int type, int concurrency) throws SQLException
ResultSet
.type
- the ResultSet
type, as defined in java.sql.ResultSet
:
ResultSet.TYPE_FORWARD_ONLY
ResultSet.TYPE_SCROLL_INSENSITIVE
ResultSet.TYPE_SCROLL_SENSITIVE
concurrency
- a concurrency type, which may be one of ResultSet.CONCUR_READ_ONLY
or ResultSet.CONCUR_UPDATABLE
.true
if that concurrency and ResultSet
type
pairing is supported otherwise false
.SQLException
- a database error occurred.boolean supportsResultSetHoldability(int holdability) throws SQLException
ResultSet
holdability mode is
supported.holdability
- as specified in java.sql.ResultSet
: ResultSet.HOLD_CURSORS_OVER_COMMIT
or ResultSet.CLOSE_CURSORS_AT_COMMIT
true
if the given ResultSet holdability is supported and
if it isn't then false
.SQLException
- a database error occurred.boolean supportsResultSetType(int type) throws SQLException
ResultSet
type is supported.type
- the ResultSet
type as defined in java.sql.ResultSet
: ResultSet.TYPE_FORWARD_ONLY
,
ResultSet.TYPE_SCROLL_INSENSITIVE
, or ResultSet.TYPE_SCROLL_SENSITIVE
true
if the ResultSet
type is supported, false
otherwise.SQLException
- a database error occurred.boolean supportsSavepoints() throws SQLException
true
if savepoints are supported, false
otherwise.SQLException
- a database error occurred.boolean supportsSchemasInDataManipulation() throws SQLException
true
if a schema name can be used in a data manipulation,
otherwise false
.SQLException
- a database error occurred.boolean supportsSchemasInIndexDefinitions() throws SQLException
true
if a schema name can be used in an index definition,
otherwise false
.SQLException
- a database error occurred.boolean supportsSchemasInPrivilegeDefinitions() throws SQLException
true
if a database schema name may be used in a privilege
definition, otherwise false
SQLException
- a database error occurred.boolean supportsSchemasInProcedureCalls() throws SQLException
true
if a schema name can be used in a procedure call,
otherwise false
.SQLException
- a database error occurred.boolean supportsSchemasInTableDefinitions() throws SQLException
true
if a schema name can be used in a table definition,
otherwise false
.SQLException
- a database error occurred.boolean supportsSelectForUpdate() throws SQLException
SELECT FOR UPDATE
statement is supported.true
if SELECT FOR UPDATE
statements are
supported, otherwise false
.SQLException
- a database error occurred.boolean supportsStatementPooling() throws SQLException
true
of the database does support statement pooling,
otherwise false
.SQLException
- a database error occurred.boolean supportsStoredProcedures() throws SQLException
true
if stored procedure calls using the stored procedure
escape syntax are supported, otherwise false
.SQLException
- a database error occurred.boolean supportsSubqueriesInComparisons() throws SQLException
true
if subqueries are supported in comparison
expressions.SQLException
- a database error occurred.boolean supportsSubqueriesInExists() throws SQLException
EXISTS
expressions are supported.true
if subqueries are supported in EXISTS
expressions, otherwise false
.SQLException
- a database error occurred.boolean supportsSubqueriesInIns() throws SQLException
IN
statements are supported.true
if subqueries are supported in IN
statements,
otherwise false
.SQLException
- a database error occurred.boolean supportsSubqueriesInQuantifieds() throws SQLException
true
if subqueries are supported, otherwise false
.SQLException
- a database error occurred.boolean supportsTableCorrelationNames() throws SQLException
true
if table correlation names are supported, otherwise
false
.SQLException
- a database error occurred.boolean supportsTransactionIsolationLevel(int level) throws SQLException
level
- the transaction isolation level, as specified in java.sql.Connection
: TRANSACTION_NONE
, TRANSACTION_READ_COMMITTED
, TRANSACTION_READ_UNCOMMITTED
, TRANSACTION_REPEATABLE_READ
, TRANSACTION_SERIALIZABLE
true
if the specific isolation level is supported,
otherwise false
.SQLException
- a database error occurred.boolean supportsTransactions() throws SQLException
If transactions are not supported, then the commit
method does
nothing and the transaction isolation level is always TRANSACTION_NONE
.
true
if transactions are supported, otherwise false
.SQLException
- a database error occurred.boolean supportsUnion() throws SQLException
SQL UNION
operation is supported.true
of the database does support UNION
, otherwise
false
.SQLException
- a database error occurred.boolean supportsUnionAll() throws SQLException
SQL UNION ALL
operation is supported.true
if the database does support UNION ALL
,
otherwise false
.SQLException
- a database error occurred.boolean updatesAreDetected(int type) throws SQLException
ResultSet.rowUpdated
can detect a visible
row update for the specified ResultSet
type.type
- ResultSet
type: ResultSet.TYPE_FORWARD_ONLY
,
ResultSet.TYPE_SCROLL_INSENSITIVE
, or ResultSet.TYPE_SCROLL_SENSITIVE
true
detecting changes is possible, otherwise false
.SQLException
- a database error occurred.boolean usesLocalFilePerTable() throws SQLException
true
if the database uses one file for each table,
otherwise false
.SQLException
- a database error occurred.boolean usesLocalFiles() throws SQLException
true
if the database stores tables in a local file,
otherwise false
.SQLException
- a database error occurred.boolean autoCommitFailureClosesAllResultSets() throws SQLException
SQLException
- if any error occursResultSet getClientInfoProperties() throws SQLException
SQLException
- if any error occursResultSet getFunctionColumns(String catalog, String schemaPattern, String functionNamePattern, String columnNamePattern) throws SQLException
catalog
- the given catalongschemaPattern
- the schema patternfunctionNamePattern
- the function name patterncolumnNamePattern
- the column name patternSQLException
- if any error occursResultSet getFunctions(String catalog, String schemaPattern, String functionNamePattern) throws SQLException
catalog
- the given catalogschemaPattern
- the schema patternfunctionNamePattern
- the function name patternSQLException
- if any error occursRowIdLifetime getRowIdLifetime() throws SQLException
SQLException
- if any error occursResultSet getSchemas(String catalog, String schemaPattern) throws SQLException
catalog
- the catalogschemaPattern
- the schema patternSQLException
- if any error occursboolean supportsStoredFunctionsUsingCallSyntax() throws SQLException
SQLException
- if any error occurs