This interface is implemented by driver vendors to let users know the capabilities of a Database Management System (DBMS) in combination with the driver based on JDBC technology ("JDBC driver") that is used with it. Different relational DBMSs often support different features, implement features in different ways, and use different data types. In addition, a driver may implement a feature on top of what the DBMS offers. Information returned by methods in this interface applies to the capabilities of a particular driver and a particular DBMS working together. Note that as used in this documentation, the term "database" is used generically to refer to both the driver and DBMS.
A user for this interface is commonly a tool that needs to discover how to
deal with the underlying DBMS. This is especially true for applications
that are intended to be used with more than one DBMS. For example, a tool might use the method
getTypeInfo to find out what data types can be used in a
CREATE TABLE statement. Or a user might call the method
supportsCorrelatedSubqueries to see if it is possible to use
a correlated subquery or supportsBatchUpdates to see if it is
possible to use batch updates.
Some DatabaseMetaData methods return lists of information
in the form of ResultSet objects.
Regular ResultSet methods, such as
getString and getInt, can be used
to retrieve the data from these ResultSet objects. If
a given form of metadata is not available, an empty ResultSet
will be returned. Additional columns beyond the columns defined to be
returned by the ResultSet object for a given method
can be defined by the JDBC driver vendor and must be accessed
by their column label.
Some DatabaseMetaData methods take arguments that are
String patterns. These arguments all have names such as fooPattern.
Within a pattern String, "%" means match any substring of 0 or more
characters, and "_" means match any one character. Only metadata
entries matching the search pattern are returned. If a search pattern
argument is set to null, that argument's criterion will
be dropped from the search.
HSQLDB-Specific Information:
Metadata Table Production
Starting with HSQLDB 1.7.2, the metadata table (a.k.a system table) production implementation provided in the default build filters metadata based on each SQL session user's access rights which in turn lifts the pre-HSQLDB 1.7.2 restriction that only users with the DBA role ('admin' users in older HSQLDB parlance) could expect trouble-free access to all metadata.
Also starting with HSQLDB 1.7.2, the metadata table production implementation
classes are loaded dynamically, using a precedence policy to find and load
the richest producer available at runtime. In the event that no better
alternative is found, the default minimal (completely restricted) provider
is selected. Under this scheme, it is possible for third party packagers to
create custom distributions targeted at supporting full (design-time),
custom-written (proprietary / micro environment), minimal (production-time)
or completely-restricted (space-constrained | device embedded | real-time |
hostile environment) metadata table production scenarios. To learn more
about this option, interested parties can review the documentation and source
code for the org.hsqldb.dbinfo.DatabaseInformation class.
Please also note that in addition to the metadata tables produced to directly support this class, starting with HSQLDB 1.7.2, the default build provides many additional tables covering all or most HSQLDB features, such as descriptions of the triggers and aliases defined in the database.
For instance, in the default build, a fairly comprehensive description of
each INFORMATION_SCHEMA table and each INFORMATION_SCHEMA table
column is included in the REMARKS column of the getTables(. and getColumns(. results, which derive
from INFORMATION_SCHEMA.SYSTEM_TABLES and INFORMATION_SCHEMA.SYSTEM_COLUMNS,
respectively.
Since HSQLDB 2.0 the INFORMATION_SCHEMA views have been vastly expanded in compliance with the SQL:2011 Standard and report the properties of all database objects.
Schema Metadata
The SQL SCHEMA concept became fully supported in the HSQLDB 1.8.x series and this fact is reflected in the all subsequent versions of this class.Catalog Metadata
Starting with HSQLDB 2.0, SQL standards compliance up to SQL:2008 and beyond is a major theme which is reflected in the provision of the majority of the standard-defined full-name INFORMATION_SCHEMA views.However, just as CATALOG semantics and handling are still considered to be implementation defined by the most recent SQL standard (SQL:2011), so is the HSQLDB CATALOG concept still in the process of being defined and refined in HSQLDB 2.x. and beyond.
Similarly, starting with HSQLDB 2.x, from the perspective of SQL identification, an HSQLDB JDBC URL connects to a single HSQLDB database instance which consists of a single, default CATALOG named PUBLIC in which each SCHEMA instance of the database resides. The name of this catalog can be changed with the ALTER CATALOG <name> RENAME TO statement. As of version 2.1.0, HSQLDB supports qualification by the containing CATALOG of database objects at the syntactic level, but does not yet support operations such as opening, manipulating or querying against multiple database catalogs within a single session, not even in a one-at-a-time fashion.
Index Metadata
It must still be noted that as of the most recent release, HSQLDB continues to ignore theapproximate argument of getIndexInfo() as no data is returned for CARDINALITY and PAGES coloumns.Notes
for developers extending metadata table production
Note that in the absence of an ORDER BY clause, queries against the metadata tables that directly support this class are expected to return rows in JDBC contract order. The reason for this is that results typically come back much faster when no "ORDER BY" clause is used.As such, when adding, extending or replacing a JDBC database metadata table production routine, developers need to be aware of this fact and either add the contract "ORDER BY" clause to the driving SQL or, when possible, preferably maintain rows in the contract order by correctly coding the primary index definition in the table producer class.
org.hsqldb.dbinfo.DatabaseInformation
| Modifier and Type | Field and Description |
|---|---|
| private static final String | BRI_SESSION_SCOPE_IN_LIST
A CSV list representing the SQL IN list to use when generating
queries for |
| private static final String | BRI_TEMPORARY_SCOPE_IN_LIST
A CSV list representing the SQL IN list to use when generating
queries for |
| private static final String | BRI_TRANSACTION_SCOPE_IN_LIST
A CSV list representing the SQL IN list to use when generating
queries for |
| private boolean | concatNulls
NULL related properties are updated on each call. |
| private JDBCConnection | connection
The connection this object uses to retrieve database instance-specific metadata. |
| pack-priv static final Integer | INT_COLUMNS_NO_NULLS
Used by getBestRowIdentifier to avoid extra object construction |
| public static final int | |
| public static final int | |
| private boolean | |
| private boolean | |
| private static final String[] | |
| private static final String[] | |
| private static final String[] | |
| private static final String[] | |
| private static final String | selstar
"SELECT * FROM ". |
| public static final String | |
| private final boolean | useSchemaDefault
Connection property for schema reporting. |
| private static final String | whereTrue
" WHERE TRUE ". |
| Access | Constructor and Description |
|---|---|
| pack-priv | JDBCDatabaseMetaData(JDBCConnection
the connection this object will use to retrieve
instance-specific metadata c)Constructs a new |
| Modifier and Type | Method and Description |
|---|---|
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether the current user can call all the procedures
returned by the method |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether the current user can use all the tables returned
by the method |
| private static String | Returns: an "AND" predicate built from the argumentsthe simple, non-quoted identifier of a system table
column upon which to filter. id, String
No checking is done for column name validity. the conditional operation to perform using the system table
column name value and the op, Object val argument.an object representing the value to use in some conditional
operation, op, between the column identified by the id argument
and this argument.
val)
Retrieves an "AND" predicate based on the (column) |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a data definition statement within a transaction forces the transaction to commit. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database ignores a data definition statement within a transaction. |
| public boolean | Returns: true if deletes are detected by the given result set type;
false otherwisethe type)ResultSet type; one of
ResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVEImplements java. Retrieves whether or not a visible row delete can be detected by
calling the method |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether the return value for the method
|
| private ResultSet | |
| private ResultSet | Returns: the result of executing "SELECT * FROM " + table " " + wherethe name of a table to "select * from" table, String the where condition for the select where)An SQL statement executor that knows how to create a "SELECT * FROM" statement, given a table name and a where clause. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a generated key will always be returned if the column name(s) or index(es) specified for the auto generated key column(s) are valid and the statement succeeds. |
| public ResultSet | Returns: aResultSet object in which each row is an
attribute descriptiona catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name pattern; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schemaPattern, String null means that the schema name should not be used to narrow
the searcha type name pattern; must match the
type name as it is stored in the database typeNamePattern, String an attribute name pattern; must match the attribute
name as it is declared in the database attributeNamePattern)Implements java. Retrieves a description of the given attribute of the given type for a user-defined type (UDT) that is available in the given schema and catalog. |
| public ResultSet | Returns: ResultSet - each row is a column descriptiona catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schema, String null means that the schema name should not be used to narrow
the searcha table name; must match the table name as it is stored
in the database table, int the scope of interest; use same values as SCOPE scope, boolean include columns that are nullable. nullable)Implements java. Retrieves a description of a table's optimal set of columns that uniquely identifies a row. |
| public ResultSet | Returns: aResultSet object in which each row has a
single String column that is a catalog nameImplements java. Retrieves the catalog names available in this database. |
| public String | Returns: the separator stringImplements java. Retrieves the |
| public String | Returns: the vendor term for "catalog"Implements java. Retrieves the database vendor's preferred term for "catalog". |
| public ResultSet | Returns: AResultSet object; each row is a supported client info
propertyImplements java. Retrieves a list of the client info properties that the driver supports. |
| public ResultSet | Returns: ResultSet - each row is a column privilege descriptiona catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name; must match the schema name as it is
stored in the database; "" retrieves those without a schema;
schema, String null means that the schema name should not be used to narrow
the searcha table name; must match the table name as it is
stored in the database table, String a column name pattern; must match the column
name as it is stored in the database columnNamePattern)Implements java. Retrieves a description of the access rights for a table's columns. |
| public ResultSet | Returns: ResultSet - each row is a column descriptiona catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name pattern; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schemaPattern, String null means that the schema name should not be used to narrow
the searcha table name pattern; must match the
table name as it is stored in the database tableNamePattern, String a column name pattern; must match the column
name as it is stored in the database columnNamePattern)Implements java. Retrieves a description of table columns available in the specified catalog. |
| public Connection | Returns: the connection that produced this metadata objectImplements java. Retrieves the connection that produced this metadata object. |
| pack-priv String | |
| public ResultSet | Returns: ResultSet - each row is a foreign key column descriptiona catalog name; must match the catalog name
as it is stored in the database; "" retrieves those without a
catalog; parentCatalog, String null means drop catalog name from the selection criteriaa schema name; must match the schema name as
it is stored in the database; "" retrieves those without a schema;
parentSchema, String null means drop schema name from the selection criteriathe name of the table that exports the key; must match
the table name as it is stored in the database parentTable, String a catalog name; must match the catalog name as
it is stored in the database; "" retrieves those without a
catalog; foreignCatalog, String null means drop catalog name from the selection criteriaa schema name; must match the schema name as it
is stored in the database; "" retrieves those without a schema;
foreignSchema, String null means drop schema name from the selection criteriathe name of the table that imports the key; must match
the table name as it is stored in the database foreignTable)Implements java. Retrieves a description of the foreign key columns in the given foreign key table that reference the primary key or the columns representing a unique constraint of the parent table (could be the same or a different table). |
| pack-priv String | |
| public String | Returns: name of collationReturns the name of the default collation for database. |
| pack-priv String | |
| public int | Returns: the underlying database's major versionImplements java. Retrieves the major version number of the underlying database. |
| public int | Returns: underlying database's minor versionImplements java. Retrieves the minor version number of the underlying database. |
| public String | Returns: database product nameImplements java. Retrieves the name of this database product. |
| public String | Returns: database version numberImplements java. Retrieves the version number of this database product. |
| public int | Returns: the default isolation levelImplements java. Retrieves this database's default transaction isolation level. |
| public int | Returns: JDBC driver major versionImplements java. Retrieves this JDBC driver's major version number. |
| public int | Returns: JDBC driver minor version numberImplements java. Retrieves this JDBC driver's minor version number. |
| public String | Returns: JDBC driver nameImplements java. Retrieves the name of this JDBC driver. |
| public String | Returns: JDBC driver versionImplements java. Retrieves the version number of this JDBC driver as a |
| public ResultSet | Returns: aResultSet object in which each row is a
foreign key column descriptiona catalog name; must match the catalog name as it
is stored in this database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schema, String null means that the schema name should not be used to narrow
the searcha table name; must match the table name as it is stored
in this database table)Implements java. Retrieves a description of the foreign key columns that reference the given table's primary key columns (the foreign keys exported by a table). |
| public String | Returns: the string containing the extra charactersImplements java. Retrieves all the "extra" characters that can be used in unquoted identifier names (those beyond a-z, A-Z, 0-9 and _). |
| public ResultSet | Returns: ResultSet - each row describes a
user function parameter, column or return typea catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name pattern; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schemaPattern, String null means that the schema name should not be used to narrow
the searcha procedure name pattern; must match the
function name as it is stored in the database functionNamePattern, String a parameter name pattern; must match the
parameter or column name as it is stored in the database columnNamePattern)Implements java. Retrieves a description of the given catalog's system or user function parameters and return type. |
| public ResultSet | Returns: ResultSet - each row is a function descriptiona catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name pattern; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schemaPattern, String null means that the schema name should not be used to narrow
the searcha function name pattern; must match the
function name as it is stored in the database functionNamePattern)Implements java. Retrieves a description of the system and user functions available in the given catalog. |
| public String | Returns: the quoting string or a space if quoting is not supportedImplements java. Retrieves the string used to quote SQL identifiers. |
| public ResultSet | Returns: ResultSet - each row is a primary key column descriptiona catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schema, String null means that the schema name should not be used to narrow
the searcha table name; must match the table name as it is stored
in the database table)Implements java. Retrieves a description of the primary key columns that are referenced by the given table's foreign key columns (the primary keys imported by a table). |
| public ResultSet | Returns: ResultSet - each row is an index column descriptiona catalog name; must match the catalog name as it
is stored in this database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name; must match the schema name
as it is stored in this database; "" retrieves those without a schema;
schema, String null means that the schema name should not be used to narrow
the searcha table name; must match the table name as it is stored
in this database table, boolean when true, return only indices for unique values;
when false, return indices regardless of whether unique or not unique, boolean when true, result is allowed to reflect approximate
or out of data values; when false, results are requested to be
accurate approximate)Implements java. Retrieves a description of the given table's indices and statistics. |
| public int | Returns: JDBC version major numberImplements java. Retrieves the major JDBC version number for this driver. |
| public int | Returns: JDBC version minor numberImplements java. Retrieves the minor JDBC version number for this driver. |
| public int | Returns: max the maximum length (in hex characters) for a binary literal; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of hex characters this database allows in an inline binary literal. |
| public int | Returns: the maximum number of characters allowed in a catalog name; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of characters that this database allows in a catalog name. |
| public int | Returns: the maximum number of characters allowed for a character literal; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of characters this database allows for a character literal. |
| public int | Returns: the maximum number of characters allowed for a column name; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of characters this database allows for a column name. |
| public int | Returns: the maximum number of columns allowed; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of columns this database allows in a
|
| public int | Returns: the maximum number of columns allowed; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of columns this database allows in an index. |
| public int | Returns: the maximum number of columns allowed; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of columns this database allows in an
|
| public int | Returns: the maximum number of columns allowed; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of columns this database allows in a
|
| public int | Returns: the maximum number of columns allowed; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of columns this database allows in a table. |
| public int | Returns: the maximum number of active connections possible at one time; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of concurrent connections to this database that are possible. |
| public int | Returns: the maximum number of characters allowed in a cursor name; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of characters that this database allows in a cursor name. |
| public int | Returns: the maximum number of bytes allowed; this limit includes the composite of all the constituent parts of the index; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of bytes this database allows for an index, including all of the parts of the index. |
| public long | Returns: the maximum number of bytes allowed; a result of zero means that there is no limit or the limit is not knownOverrides default java. Retrieves the maximum number of bytes this database allows for
the logical size for a |
| public int | Returns: the maximum number of characters allowed in a procedure name; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of characters that this database allows in a procedure name. |
| public int | Returns: the maximum number of bytes allowed for a row; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of bytes this database allows in a single row. |
| public int | Returns: the maximum number of characters allowed in a schema name; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of characters that this database allows in a schema name. |
| public int | Returns: the maximum number of characters allowed for an SQL statement; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of characters this database allows in an SQL statement. |
| public int | Returns: the maximum number of statements that can be open at one time; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of active statements to this database that can be open at the same time. |
| public int | Returns: the maximum number of characters allowed for a table name; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of characters this database allows in a table name. |
| public int | Returns: the maximum number of tables allowed in aSELECT
statement; a result of zero means that there is no limit or
the limit is not knownImplements java. Retrieves the maximum number of tables this database allows in a
|
| public int | Returns: the maximum number of characters allowed for a user name; a result of zero means that there is no limit or the limit is not knownImplements java. Retrieves the maximum number of characters this database allows in a user name. |
| public String | Returns: the list of math functions supported by this databaseImplements java. Retrieves a comma-separated list of math functions available with this database. |
| public ResultSet | Returns: ResultSet - each row is a primary key column descriptiona catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schema, String null means that the schema name should not be used to narrow
the searcha table name; must match the table name as it is stored
in the database table)Implements java. Retrieves a description of the given table's primary key columns. |
| public ResultSet | Returns: ResultSet - each row describes a stored procedure parameter or
columna catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name pattern; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schemaPattern, String null means that the schema name should not be used to narrow
the searcha procedure name pattern; must match the
procedure name as it is stored in the database procedureNamePattern, String a column name pattern; must match the column name
as it is stored in the database columnNamePattern)Implements java. Retrieves a description of the given catalog's stored procedure parameter and result columns. |
| public ResultSet | Returns: ResultSet - each row is a procedure descriptiona catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name pattern; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schemaPattern, String null means that the schema name should not be used to narrow
the searcha procedure name pattern; must match the
procedure name as it is stored in the database procedureNamePattern)Implements java. Retrieves a description of the stored procedures available in the given catalog. |
| public String | Returns: the vendor term for "procedure"Implements java. Retrieves the database vendor's preferred term for "procedure". |
| public ResultSet | Returns: ResultSet - each row is a column descriptiona catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name pattern; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schemaPattern, String null means that the schema name should not be used to narrow
the searcha table name pattern; must match the
table name as it is stored in the database tableNamePattern, String a column name pattern; must match the column
name as it is stored in the database columnNamePattern)Implements java. Retrieves a description of the pseudo or hidden columns available in a given table within the specified catalog and schema. |
| public int | Returns: the default holdability; eitherResultSet.HOLD_CURSORS_OVER_COMMIT or
ResultSet.CLOSE_CURSORS_AT_COMMITImplements java. Retrieves this database's default holdability for |
| public RowIdLifetime | Returns: the status indicating the lifetime of aRowIdImplements java. Indicates whether this data source supports the SQL |
| public ResultSet | Returns: aResultSet object in which each row is a
schema descriptionImplements java. Retrieves the schema names available in this database. |
| public ResultSet | Returns: aResultSet object in which each row is a
schema descriptiona catalog name; must match the catalog name as it is stored
in the database;"" retrieves those without a catalog; null means catalog
name should not be used to narrow down the search. catalog, String a schema name; must match the schema name as it is
stored in the database; null means
schema name should not be used to narrow down the search. schemaPattern)Implements java. Retrieves the schema names available in this database. |
| public String | Returns: the vendor term for "schema"Implements java. Retrieves the database vendor's preferred term for "schema". |
| public String | Returns: the string used to escape wildcard charactersImplements java. Retrieves the string that can be used to escape wildcard characters. |
| public String | Returns: the list of this database's keywords that are not also SQL:2003 keywordsImplements java. Retrieves a comma-separated list of all of this database's SQL keywords that are NOT also SQL:2003 keywords. |
| public int | Returns: the type of SQLSTATE; one of: sqlStateXOpen or sqlStateSQLImplements java. Indicates whether the SQLSTATE returned by |
| public String | Returns: the list of string functions supported by this databaseImplements java. Retrieves a comma-separated list of string functions available with this database. |
| public ResultSet | Returns: aResultSet object in which each row is a type descriptiona catalog name; "" retrieves those without a catalog;
catalog, String null means drop catalog name from the selection criteriaa schema name pattern; "" retrieves those
without a schema schemaPattern, String a table name pattern; may be a fully-qualified
name tableNamePattern)Implements java. Retrieves a description of the table hierarchies defined in a particular schema in this database. |
| public ResultSet | Returns: aResultSet object in which a row gives information
about the designated UDTa catalog name; "" retrieves those without a catalog;
catalog, String null means drop catalog name from the selection criteriaa schema name pattern; "" retrieves those
without a schema schemaPattern, String a UDT name pattern; may be a fully-qualified
name typeNamePattern)Implements java. Retrieves a description of the user-defined type (UDT) hierarchies defined in a particular schema in this database. |
| public String | Returns: a list of system functions supported by this databaseImplements java. Retrieves a comma-separated list of system functions available with this database. |
| public ResultSet | Returns: ResultSet - each row is a table privilege descriptiona catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name pattern; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schemaPattern, String null means that the schema name should not be used to narrow
the searcha table name pattern; must match the
table name as it is stored in the database tableNamePattern)Implements java. Retrieves a description of the access rights for each table available in a catalog. |
| public ResultSet | Returns: ResultSet - each row is a table descriptiona catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name pattern; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schemaPattern, String null means that the schema name should not be used to narrow
the searcha table name pattern; must match the
table name as it is stored in the database tableNamePattern, String[] a list of table types, which must be from the list of table types
returned from types)getTableTypes, to include; null returns
all typesImplements java. Retrieves a description of the tables available in the given catalog. |
| public ResultSet | Returns: aResultSet object in which each row has a
single String column that is a table typeImplements java. Retrieves the table types available in this database. |
| public String | Returns: the list of time and date functions supported by this databaseImplements java. Retrieves a comma-separated list of the time and date functions available with this database. |
| public ResultSet | Returns: aResultSet object in which each row is an SQL
type descriptionImplements java. Retrieves a description of all the data types supported by this database. |
| public ResultSet | Returns: ResultSet object in which each row describes a UDTa catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema pattern name; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schemaPattern, String null means that the schema name should not be used to narrow
the searcha type name pattern; must match the type name
as it is stored in the database; may be a fully qualified name typeNamePattern, int[] a list of user-defined types (JAVA_OBJECT,
STRUCT, or DISTINCT) to include; types)null returns all typesImplements java. Retrieves a description of the user-defined types (UDTs) defined in a particular schema. |
| public String | Returns: the URL for this DBMS ornull if it cannot be
generatedImplements java. Retrieves the URL for this DBMS. |
| public String | Returns: the database user nameImplements java. Retrieves the user name as known to this database. |
| public ResultSet | Returns: aResultSet object in which each row is a
column descriptiona catalog name; must match the catalog name as it
is stored in the database; "" retrieves those without a catalog;
catalog, String null means that the catalog name should not be used to narrow
the searcha schema name; must match the schema name
as it is stored in the database; "" retrieves those without a schema;
schema, String null means that the schema name should not be used to narrow
the searcha table name; must match the table name as it is stored
in the database table)Implements java. Retrieves a description of a table's columns that are automatically updated when any value in a row is updated. |
| public boolean | Returns: true if changes are detected by the specified result
set type; false otherwisethe type)ResultSet type; one of
ResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVEImplements java. Retrieves whether or not a visible row insert can be detected
by calling the method |
| public boolean | Returns: true if the catalog name appears at the beginning
of a fully qualified table name; false otherwiseImplements java. Retrieves whether a catalog appears at the start of a fully qualified table name. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database is in read-only mode. |
| public boolean | Returns: true if this implements the interface or directly or indirectly wraps an object that does.a Class defining an interface. iface)Implements java. Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does. |
| public boolean | Returns: true if updates are made to a copy of the LOB;
false if updates are made directly to the LOBImplements java. Indicates whether updates made to a LOB are made on a copy or directly to the LOB. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports concatenations between
|
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether |
| public boolean | Returns: true if deletes made by others
are visible for the given result set type;
false otherwisethe type)ResultSet type; one of
ResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVEImplements java. Retrieves whether deletes made by others are visible. |
| public boolean | Returns: true if inserts made by others
are visible for the given result set type;
false otherwisethe type)ResultSet type; one of
ResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVEImplements java. Retrieves whether inserts made by others are visible. |
| public boolean | Returns: true if updates made by others
are visible for the given result set type;
false otherwisethe type)ResultSet type; one of
ResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVEImplements java. Retrieves whether updates made by others are visible. |
| public boolean | Returns: true if deletes are visible for the given result set type;
false otherwisethe type)ResultSet type; one of
ResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVEImplements java. Retrieves whether a result set's own deletes are visible. |
| public boolean | Returns: true if inserts are visible for the given result set type;
false otherwisethe type)ResultSet type; one of
ResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVEImplements java. Retrieves whether a result set's own inserts are visible. |
| public boolean | Returns: true if updates are visible for the given result set type;
false otherwisethe type)ResultSet type; one of
ResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVEImplements java. Retrieves whether for the given type of |
| pack-priv void | |
| private void | |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in lower case. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in lower case. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in mixed case. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in mixed case. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in upper case. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in upper case. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports the ANSI92 entry level SQL grammar. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports the ANSI92 full SQL grammar supported. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports the ANSI92 intermediate SQL grammar supported. |
| public boolean | Returns: true if this database supports batch updates;
false otherwiseImplements java. Retrieves whether this database supports batch updates. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a catalog name can be used in a data manipulation statement. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a catalog name can be used in an index definition statement. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a catalog name can be used in a privilege definition statement. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a catalog name can be used in a procedure call statement. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a catalog name can be used in a table definition statement. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports column aliasing. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports the JDBC scalar function
|
| public boolean | Returns: true if so; false otherwisethe type to convert from; one of the type codes from
the class fromType, int java.sql.Typesthe type to convert to; one of the type codes from
the class toType)java.sql.TypesImplements java. Retrieves whether this database supports the JDBC scalar function
|
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports the ODBC Core SQL grammar. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports correlated subqueries. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports both data definition and data manipulation statements within a transaction. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports only data manipulation statements within a transaction. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether, when table correlation names are supported, they are restricted to being different from the names of the tables. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports expressions in
|
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports the ODBC Extended SQL grammar. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports full nested outer joins. |
| public boolean | Returns: true if auto-generated keys can be retrieved
after a statement has executed; false otherwise
If Implements java. Retrieves whether auto-generated keys can be retrieved after a statement has been executed HSQLDB-Specific Information:
HSQLDB supports retrieval of
autogenerated keys through the JDBC interface;
this method always returns |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports some form of
|
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports using columns not included in
the |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports using a column that is
not in the |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports the SQL Integrity Enhancement Facility. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports specifying a
|
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database provides limited support for outer joins. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports the ODBC Minimum SQL grammar. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database treats mixed case unquoted SQL identifiers as case sensitive and as a result stores them in mixed case. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database treats mixed case quoted SQL identifiers as case sensitive and as a result stores them in mixed case. |
| public boolean | Returns: true if a CallableStatement object
can return multiple ResultSet objects
simultaneously; false otherwiseImplements java. Retrieves whether it is possible to have multiple |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports getting multiple
|
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database allows having multiple transactions open at once (on different connections). |
| public boolean | Returns: true if named parameters are supported;
false otherwiseImplements java. Retrieves whether this database supports named parameters to callable statements. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether columns in this database may be defined as non-nullable. |
| public boolean | Returns: true if cursors always remain open;
false if they might not remain openImplements java. Retrieves whether this database supports keeping cursors open across commits. |
| public boolean | Returns: true if cursors always remain open;
false if they might not remain openImplements java. Retrieves whether this database supports keeping cursors open across rollbacks. |
| public boolean | Returns: true if statements always remain open;
false if they might not remain openImplements java. Retrieves whether this database supports keeping statements open across commits. |
| public boolean | Returns: true if statements always remain open;
false if they might not remain openImplements java. Retrieves whether this database supports keeping statements open across rollbacks. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports using a column that is
not in the |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports some form of outer join. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports positioned |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports positioned |
| public boolean | Returns: true if this database supports REF CURSOR;
false otherwiseOverrides default java. Retrieves whether this database supports REF CURSOR. |
| public boolean | Returns: true if so; false otherwisedefined in type, int java.sql.ResultSettype defined in concurrency)java.sql.ResultSetImplements java. Retrieves whether this database supports the given concurrency type in combination with the given result set type. |
| public boolean | Returns: true if so; false otherwiseone of the following constants:
holdability)ResultSet.HOLD_CURSORS_OVER_COMMIT or
ResultSet.CLOSE_CURSORS_AT_COMMITImplements java. Retrieves whether this database supports the given result set holdability. |
| public boolean | Returns: true if so; false otherwisedefined in type)java.sql.ResultSetImplements java. Retrieves whether this database supports the given result set type. |
| public boolean | Returns: true if savepoints are supported;
false otherwiseImplements java. Retrieves whether this database supports savepoints. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a schema name can be used in a data manipulation statement. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a schema name can be used in an index definition statement. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a schema name can be used in a privilege definition statement. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a schema name can be used in a procedure call statement. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether a schema name can be used in a table definition statement. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports statement pooling. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports invoking user-defined or vendor functions using the stored procedure escape syntax. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports stored procedure calls that use the stored procedure escape syntax. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports subqueries in comparison expressions. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports subqueries in
|
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports subqueries in
|
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports subqueries in quantified expressions. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports table correlation names. |
| public boolean | Returns: true if so; false otherwiseone of the transaction isolation levels defined in
level)java.sql.ConnectionImplements java. Retrieves whether this database supports the given transaction isolation level. |
| public boolean | Returns: true if transactions are supported;
false otherwiseImplements java. Retrieves whether this database supports transactions. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports SQL |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database supports SQL |
| private StringBuilder | Returns: an StringBuilder whose content is: "SELECT * FROM <table> WHERE 1=1"the name of the table t)Retrieves "SELECT * FROM INFORMATION_SCHEMA. |
| private String | translateCatalog(String catalogName)
For compatibility, when the connection property "default_schema=true" is present, any DatabaseMetaData call with an empty string as the catalog parameter will use the default catalog "PUBLIC". |
| private String | translateSchema(String schemaName)
For compatibility, when the connection property "default_schema=true" is present, any DatabaseMetaData call with an empty string as the schema parameter will use the default schema (normally "PUBLIC"). |
| public <T> T | Returns: an object that implements the interface. May be a proxy for the actual implementing object.A Class defining an interface that the result must implement. iface)Implements java. Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy. |
| public boolean | Returns: true if changes are detected by the result set type;
false otherwisethe type)ResultSet type; one of
ResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVEImplements java. Retrieves whether or not a visible row update can be detected by
calling the method |
| public boolean | Returns: true if this database uses a local file for each table;
false otherwiseImplements java. Retrieves whether this database uses a file for each table. |
| public boolean | Returns: true if so; false otherwiseImplements java. Retrieves whether this database stores tables in a local file. |
| private static boolean | Returns: true if the argument, s, is filter parameter value that requires a corresponding IS NULL predicatethe filter parameter to test s)Retrieves whether the JDBC |