IDatabaseMetaData Interface
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Comprehensive information about the database as a whole.
[Android.Runtime.Register("java/sql/DatabaseMetaData", "", "Java.Sql.IDatabaseMetaDataInvoker")]
public interface IDatabaseMetaData : IDisposable, Java.Interop.IJavaPeerable, Java.Sql.IWrapper
[<Android.Runtime.Register("java/sql/DatabaseMetaData", "", "Java.Sql.IDatabaseMetaDataInvoker")>]
type IDatabaseMetaData = interface
interface IWrapper
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Attributes
- Implements
Remarks
Comprehensive information about the database as a whole.
This interface is implemented by driver vendors to let users know the capabilities of a Database Management System (DBMS) in combination with the driver based on JDBC<sup><font size=-2>TM</font></sup> 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 <B>column label</B>.
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.
Java documentation for java.sql.DatabaseMetaData
.
Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.
Fields
AttributeNoNulls |
Indicates that |
AttributeNullable |
Indicates that |
AttributeNullableUnknown |
Indicates that whether |
BestRowNotPseudo |
Indicates that the best row identifier is NOT a pseudo column. |
BestRowPseudo |
Indicates that the best row identifier is a pseudo column. |
BestRowSession |
Indicates that the scope of the best row identifier is the remainder of the current session. |
BestRowTemporary |
Indicates that the scope of the best row identifier is very temporary, lasting only while the row is being used. |
BestRowTransaction |
Indicates that the scope of the best row identifier is the remainder of the current transaction. |
BestRowUnknown |
Indicates that the best row identifier may or may not be a pseudo column. |
ColumnNoNulls |
Indicates that the column might not allow |
ColumnNullable |
Indicates that the column definitely allows |
ColumnNullableUnknown |
Indicates that the nullability of columns is unknown. |
FunctionColumnIn |
Indicates that the parameter or column is an IN parameter. |
FunctionColumnInOut |
Indicates that the parameter or column is an INOUT parameter. |
FunctionColumnOut |
Indicates that the parameter or column is an OUT parameter. |
FunctionColumnResult |
Indicates that the parameter or column is a column in a result set. |
FunctionColumnUnknown |
Indicates that type of the parameter or column is unknown. |
FunctionNoNulls |
Indicates that |
FunctionNoTable |
Indicates that the function does not return a table. |
FunctionNullable |
Indicates that |
FunctionNullableUnknown |
Indicates that whether |
FunctionResultUnknown |
Indicates that it is not known whether the function returns a result or a table. |
FunctionReturn |
Indicates that the parameter or column is a return value. |
FunctionReturnsTable |
Indicates that the function returns a table. |
ImportedKeyCascade |
For the column |
ImportedKeyInitiallyDeferred |
Indicates deferrability. |
ImportedKeyInitiallyImmediate |
Indicates deferrability. |
ImportedKeyNoAction |
For the columns |
ImportedKeyNotDeferrable |
Indicates deferrability. |
ImportedKeyRestrict |
For the column |
ImportedKeySetDefault |
For the columns |
ImportedKeySetNull |
For the columns |
ProcedureColumnIn |
Indicates that the column stores IN parameters. |
ProcedureColumnInOut |
Indicates that the column stores INOUT parameters. |
ProcedureColumnOut |
Indicates that the column stores OUT parameters. |
ProcedureColumnResult |
Indicates that the column stores results. |
ProcedureColumnReturn |
Indicates that the column stores return values. |
ProcedureColumnUnknown |
Indicates that type of the column is unknown. |
ProcedureNoNulls |
Indicates that |
ProcedureNoResult |
Indicates that the procedure does not return a result. |
ProcedureNullable |
Indicates that |
ProcedureNullableUnknown |
Indicates that whether |
ProcedureResultUnknown |
Indicates that it is not known whether the procedure returns a result. |
ProcedureReturnsResult |
Indicates that the procedure returns a result. |
SqlStateSQL |
A possible return value for the method
|
SqlStateSQL99 |
A possible return value for the method
|
SqlStateXOpen |
A possible return value for the method
|
TableIndexClustered |
Indicates that this table index is a clustered index. |
TableIndexHashed |
Indicates that this table index is a hashed index. |
TableIndexOther |
Indicates that this table index is not a clustered index, a hashed index, or table statistics; it is something other than these. |
TableIndexStatistic |
Indicates that this column contains table statistics that are returned in conjunction with a table's index descriptions. |
TypeNoNulls |
Indicates that a |
TypeNullable |
Indicates that a |
TypeNullableUnknown |
Indicates that it is not known whether a |
TypePredBasic |
Indicates that the data type can be only be used in |
TypePredChar |
Indicates that the data type
can be only be used in |
TypePredNone |
Indicates that |
TypeSearchable |
Indicates that all |
VersionColumnNotPseudo |
Indicates that this version column is NOT a pseudo column. |
VersionColumnPseudo |
Indicates that this version column is a pseudo column. |
VersionColumnUnknown |
Indicates that this version column may or may not be a pseudo column. |
Properties
Catalogs |
Returns the set of catalog names available in this database. |
CatalogSeparator |
Returns the separator that this database uses between a catalog name and table name. |
CatalogTerm |
Returns the term that the database vendor prefers term for "catalog". |
ClientInfoProperties |
Returns a list of the client info properties of the driver. |
Connection |
Returns the database connection that created this metadata. |
DatabaseMajorVersion |
Returns the major version number of the database software. |
DatabaseMinorVersion |
Returns the minor version number of the database software. |
DatabaseProductName |
Returns the name of the database software. |
DatabaseProductVersion |
Returns the version number of this database software. |
DefaultTransactionIsolation |
Returns the default transaction isolation level for this database. |
DriverMajorVersion |
Returns the JDBC driver's major version number. |
DriverMinorVersion |
Returns the JDBC driver's minor version number. |
DriverName |
Returns the name of this JDBC driver. |
DriverVersion |
Returns the version number of this JDBC driver. |
ExtraNameCharacters |
Returns a string of characters that may be used in unquoted identifier names. |
Handle |
Gets the JNI value of the underlying Android object. (Inherited from IJavaObject) |
IdentifierQuoteString |
Returns the string used to quote SQL identifiers. |
IsCatalogAtStart |
Determine whether a fully qualified table name is prefixed or suffixed to a fully qualified table name. |
IsReadOnly |
Determines whether the database is in read-only mode. |
JDBCMajorVersion |
Returns this driver's major JDBC version number. |
JDBCMinorVersion |
Returns the minor JDBC version number for this driver. |
JniIdentityHashCode |
Returns the value of |
JniManagedPeerState |
State of the managed peer. (Inherited from IJavaPeerable) |
JniPeerMembers |
Member access and invocation support. (Inherited from IJavaPeerable) |
MaxBinaryLiteralLength |
Get the maximum number of hex characters in an in-line binary literal for this database. |
MaxCatalogNameLength |
Returns the maximum size of a catalog name in this database. |
MaxCharLiteralLength |
Returns the maximum size for a character literal in this database. |
MaxColumnNameLength |
Returns the maximum size for a Column name for this database. |
MaxColumnsInGroupBy |
Get the maximum number of columns in a |
MaxColumnsInIndex |
Returns the maximum number of columns in an Index for this database. |
MaxColumnsInOrderBy |
Returns the maximum number of columns in an |
MaxColumnsInSelect |
Returns the maximum number of columns in a |
MaxColumnsInTable |
Returns the maximum number of columns in a table for this database. |
MaxConnections |
Returns the database's maximum number of concurrent connections. |
MaxCursorNameLength |
Returns the maximum length of a cursor name for this database. |
MaxIndexLength |
Returns the maximum length in bytes for an Index for this database. |
MaxProcedureNameLength |
Returns the maximum number of characters for a procedure name in this database. |
MaxRowSize |
Returns the maximum number of bytes within a single row for this database. |
MaxSchemaNameLength |
Returns the maximum number of characters in a schema name for this database. |
MaxStatementLength |
Returns the maximum number of characters in an SQL statement for this database. |
MaxStatements |
Get the maximum number of simultaneously open active statements for this database. |
MaxTableNameLength |
Returns the maximum size for a table name in the database. |
MaxTablesInSelect |
Returns the maximum number of tables permitted in a |
MaxUserNameLength |
Returns the maximum number of characters in a user name for the database. |
NumericFunctions |
Returns a list of the math functions available with this database. |
PeerReference |
Returns a JniObjectReference of the wrapped Java object instance. (Inherited from IJavaPeerable) |
ProcedureTerm |
Returns the database vendor's preferred name for "procedure". |
ResultSetHoldability |
Returns the result set's default holdability. |
RowIdLifetime |
Returns the lifetime for which a RowId object remains valid if this data source supports the SQL ROWID type |
Schemas |
Returns a list of the schema names in the database. |
SchemaTerm |
Returns the database vendor's preferred term for "schema". |
SearchStringEscape |
Returns the string that is used to escape wildcard characters. |
SQLKeywords |
Returns a list of all the SQL keywords that are NOT also SQL92 keywords for the database. |
SQLStateType |
States the type of |
StringFunctions |
Returns a list of string functions available with the database. |
SystemFunctions |
Returns a list of system functions available with the database. |
TableTypes |
Returns a list of table types supported by the database. |
TimeDateFunctions |
Returns a list of time and date functions available for the database. |
TypeInfo |
Get a list of the standard SQL types supported by this database. |
URL |
Returns the URL for this database. |
UserName |
Determine the user name as known by the database. |
Methods
AllProceduresAreCallable() |
Retrieves whether the current user can call all the procedures
returned by the method |
AllTablesAreSelectable() |
Retrieves whether the current user can use all the tables returned
by the method |
AutoCommitFailureClosesAllResultSets() |
Retrieves whether a |
DataDefinitionCausesTransactionCommit() |
Retrieves whether a data definition statement within a transaction forces the transaction to commit. |
DataDefinitionIgnoredInTransactions() |
Retrieves whether this database ignores a data definition statement within a transaction. |
DeletesAreDetected(Int32) |
Retrieves whether or not a visible row delete can be detected by
calling the method |
Disposed() |
Called when the instance has been disposed. (Inherited from IJavaPeerable) |
DisposeUnlessReferenced() |
If there are no outstanding references to this instance, then
calls |
DoesMaxRowSizeIncludeBlobs() |
Retrieves whether the return value for the method
|
Finalized() |
Called when the instance has been finalized. (Inherited from IJavaPeerable) |
GetAttributes(String, String, String, String) |
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. |
GetBestRowIdentifier(String, String, String, Int32, Boolean) |
Retrieves a description of a table's optimal set of columns that uniquely identifies a row. |
GetColumnPrivileges(String, String, String, String) |
Retrieves a description of the access rights for a table's columns. |
GetColumns(String, String, String, String) |
Retrieves a description of table columns available in the specified catalog. |
GetCrossReference(String, String, String, String, String, String) |
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). |
GetExportedKeys(String, String, String) |
Retrieves a description of the foreign key columns that reference the given table's primary key columns (the foreign keys exported by a table). |
GetFunctionColumns(String, String, String, String) |
Retrieves a description of the given catalog's system or user function parameters and return type. |
GetFunctions(String, String, String) |
Retrieves a description of the system and user functions available in the given catalog. |
GetImportedKeys(String, String, String) |
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). |
GetIndexInfo(String, String, String, Boolean, Boolean) |
Retrieves a description of the given table's indices and statistics. |
GetPrimaryKeys(String, String, String) |
Retrieves a description of the given table's primary key columns. |
GetProcedureColumns(String, String, String, String) |
Retrieves a description of the given catalog's stored procedure parameter and result columns. |
GetProcedures(String, String, String) |
Retrieves a description of the stored procedures available in the given catalog. |
GetSchemas(String, String) |
Retrieves the schema names available in this database. |
GetSuperTables(String, String, String) |
Retrieves a description of the table hierarchies defined in a particular schema in this database. |
GetSuperTypes(String, String, String) |
Retrieves a description of the user-defined type (UDT) hierarchies defined in a particular schema in this database. |
GetTablePrivileges(String, String, String) |
Retrieves a description of the access rights for each table available in a catalog. |
GetTables(String, String, String, String[]) |
Retrieves a description of the tables available in the given catalog. |
GetUDTs(String, String, String, Int32[]) |
Retrieves a description of the user-defined types (UDTs) defined in a particular schema. |
GetVersionColumns(String, String, String) |
Retrieves a description of a table's columns that are automatically updated when any value in a row is updated. |
InsertsAreDetected(Int32) |
Retrieves whether or not a visible row insert can be detected
by calling the method |
IsWrapperFor(Class) |
Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does. (Inherited from IWrapper) |
LocatorsUpdateCopy() |
Indicates whether updates made to a LOB are made on a copy or directly to the LOB. |
NullPlusNonNullIsNull() |
Retrieves whether this database supports concatenations between
|
NullsAreSortedAtEnd() |
Retrieves whether |
NullsAreSortedAtStart() |
Retrieves whether |
NullsAreSortedHigh() |
Retrieves whether |
NullsAreSortedLow() |
Retrieves whether |
OthersDeletesAreVisible(Int32) |
Retrieves whether deletes made by others are visible. |
OthersInsertsAreVisible(Int32) |
Retrieves whether inserts made by others are visible. |
OthersUpdatesAreVisible(Int32) |
Retrieves whether updates made by others are visible. |
OwnDeletesAreVisible(Int32) |
Retrieves whether a result set's own deletes are visible. |
OwnInsertsAreVisible(Int32) |
Retrieves whether a result set's own inserts are visible. |
OwnUpdatesAreVisible(Int32) |
Retrieves whether for the given type of |
SetJniIdentityHashCode(Int32) |
Set the value returned by |
SetJniManagedPeerState(JniManagedPeerStates) | (Inherited from IJavaPeerable) |
SetPeerReference(JniObjectReference) |
Set the value returned by |
StoresLowerCaseIdentifiers() |
Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in lower case. |
StoresLowerCaseQuotedIdentifiers() |
Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in lower case. |
StoresMixedCaseIdentifiers() |
Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in mixed case. |
StoresMixedCaseQuotedIdentifiers() |
Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in mixed case. |
StoresUpperCaseIdentifiers() |
Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in upper case. |
StoresUpperCaseQuotedIdentifiers() |
Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in upper case. |
SupportsAlterTableWithAddColumn() |
Retrieves whether this database supports |
SupportsAlterTableWithDropColumn() |
Retrieves whether this database supports |
SupportsANSI92EntryLevelSQL() |
Retrieves whether this database supports the ANSI92 entry level SQL grammar. |
SupportsANSI92FullSQL() |
Retrieves whether this database supports the ANSI92 full SQL grammar supported. |
SupportsANSI92IntermediateSQL() |
Retrieves whether this database supports the ANSI92 intermediate SQL grammar supported. |
SupportsBatchUpdates() |
Retrieves whether this database supports batch updates. |
SupportsCatalogsInDataManipulation() |
Retrieves whether a catalog name can be used in a data manipulation statement. |
SupportsCatalogsInIndexDefinitions() |
Retrieves whether a catalog name can be used in an index definition statement. |
SupportsCatalogsInPrivilegeDefinitions() |
Retrieves whether a catalog name can be used in a privilege definition statement. |
SupportsCatalogsInProcedureCalls() |
Retrieves whether a catalog name can be used in a procedure call statement. |
SupportsCatalogsInTableDefinitions() |
Retrieves whether a catalog name can be used in a table definition statement. |
SupportsColumnAliasing() |
Retrieves whether this database supports column aliasing. |
SupportsConvert() |
Retrieves whether this database supports the JDBC scalar function
|
SupportsConvert(Int32, Int32) |
Retrieves whether this database supports the JDBC scalar function
|
SupportsCoreSQLGrammar() |
Retrieves whether this database supports the ODBC Core SQL grammar. |
SupportsCorrelatedSubqueries() |
Retrieves whether this database supports correlated subqueries. |
SupportsDataDefinitionAndDataManipulationTransactions() |
Retrieves whether this database supports both data definition and data manipulation statements within a transaction. |
SupportsDataManipulationTransactionsOnly() |
Retrieves whether this database supports only data manipulation statements within a transaction. |
SupportsDifferentTableCorrelationNames() |
Retrieves whether, when table correlation names are supported, they are restricted to being different from the names of the tables. |
SupportsExpressionsInOrderBy() |
Retrieves whether this database supports expressions in
|
SupportsExtendedSQLGrammar() |
Retrieves whether this database supports the ODBC Extended SQL grammar. |
SupportsFullOuterJoins() |
Retrieves whether this database supports full nested outer joins. |
SupportsGetGeneratedKeys() |
Retrieves whether auto-generated keys can be retrieved after a statement has been executed |
SupportsGroupBy() |
Retrieves whether this database supports some form of
|
SupportsGroupByBeyondSelect() |
Retrieves whether this database supports using columns not included in
the |
SupportsGroupByUnrelated() |
Retrieves whether this database supports using a column that is
not in the |
SupportsIntegrityEnhancementFacility() |
Retrieves whether this database supports the SQL Integrity Enhancement Facility. |
SupportsLikeEscapeClause() |
Retrieves whether this database supports specifying a
|
SupportsLimitedOuterJoins() |
Retrieves whether this database provides limited support for outer joins. |
SupportsMinimumSQLGrammar() |
Retrieves whether this database supports the ODBC Minimum SQL grammar. |
SupportsMixedCaseIdentifiers() |
Retrieves whether this database treats mixed case unquoted SQL identifiers as case sensitive and as a result stores them in mixed case. |
SupportsMixedCaseQuotedIdentifiers() |
Retrieves whether this database treats mixed case quoted SQL identifiers as case sensitive and as a result stores them in mixed case. |
SupportsMultipleOpenResults() |
Retrieves whether it is possible to have multiple |
SupportsMultipleResultSets() |
Retrieves whether this database supports getting multiple
|
SupportsMultipleTransactions() |
Retrieves whether this database allows having multiple transactions open at once (on different connections). |
SupportsNamedParameters() |
Retrieves whether this database supports named parameters to callable statements. |
SupportsNonNullableColumns() |
Retrieves whether columns in this database may be defined as non-nullable. |
SupportsOpenCursorsAcrossCommit() |
Retrieves whether this database supports keeping cursors open across commits. |
SupportsOpenCursorsAcrossRollback() |
Retrieves whether this database supports keeping cursors open across rollbacks. |
SupportsOpenStatementsAcrossCommit() |
Retrieves whether this database supports keeping statements open across commits. |
SupportsOpenStatementsAcrossRollback() |
Retrieves whether this database supports keeping statements open across rollbacks. |
SupportsOrderByUnrelated() |
Retrieves whether this database supports using a column that is
not in the |
SupportsOuterJoins() |
Retrieves whether this database supports some form of outer join. |
SupportsPositionedDelete() |
Retrieves whether this database supports positioned |
SupportsPositionedUpdate() |
Retrieves whether this database supports positioned |
SupportsResultSetConcurrency(Int32, Int32) |
Retrieves whether this database supports the given concurrency type in combination with the given result set type. |
SupportsResultSetHoldability(Int32) |
Retrieves whether this database supports the given result set holdability. |
SupportsResultSetType(Int32) |
Retrieves whether this database supports the given result set type. |
SupportsSavepoints() |
Retrieves whether this database supports savepoints. |
SupportsSchemasInDataManipulation() |
Retrieves whether a schema name can be used in a data manipulation statement. |
SupportsSchemasInIndexDefinitions() |
Retrieves whether a schema name can be used in an index definition statement. |
SupportsSchemasInPrivilegeDefinitions() |
Retrieves whether a schema name can be used in a privilege definition statement. |
SupportsSchemasInProcedureCalls() |
Retrieves whether a schema name can be used in a procedure call statement. |
SupportsSchemasInTableDefinitions() |
Retrieves whether a schema name can be used in a table definition statement. |
SupportsSelectForUpdate() |
Retrieves whether this database supports |
SupportsStatementPooling() |
Retrieves whether this database supports statement pooling. |
SupportsStoredFunctionsUsingCallSyntax() |
Retrieves whether this database supports invoking user-defined or vendor functions using the stored procedure escape syntax. |
SupportsStoredProcedures() |
Retrieves whether this database supports stored procedure calls that use the stored procedure escape syntax. |
SupportsSubqueriesInComparisons() |
Retrieves whether this database supports subqueries in comparison expressions. |
SupportsSubqueriesInExists() |
Retrieves whether this database supports subqueries in
|
SupportsSubqueriesInIns() |
Retrieves whether this database supports subqueries in
|
SupportsSubqueriesInQuantifieds() |
Retrieves whether this database supports subqueries in quantified expressions. |
SupportsTableCorrelationNames() |
Retrieves whether this database supports table correlation names. |
SupportsTransactionIsolationLevel(Int32) |
Retrieves whether this database supports the given transaction isolation level. |
SupportsTransactions() |
Retrieves whether this database supports transactions. |
SupportsUnion() |
Retrieves whether this database supports SQL |
SupportsUnionAll() |
Retrieves whether this database supports SQL |
UnregisterFromRuntime() |
Unregister this instance so that the runtime will not return it from future Java.Interop.JniRuntime+JniValueManager.PeekValue invocations. (Inherited from IJavaPeerable) |
Unwrap(Class) |
Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy. (Inherited from IWrapper) |
UpdatesAreDetected(Int32) |
Retrieves whether or not a visible row update can be detected by
calling the method |
UsesLocalFilePerTable() |
Retrieves whether this database uses a file for each table. |
UsesLocalFiles() |
Retrieves whether this database stores tables in a local file. |
Extension Methods
JavaCast<TResult>(IJavaObject) |
Performs an Android runtime-checked type conversion. |
JavaCast<TResult>(IJavaObject) | |
GetJniTypeName(IJavaPeerable) |