Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

com.rohanclan.ashpool.jdbc
Class MetaData  view MetaData download MetaData.java

java.lang.Object
  extended bycom.rohanclan.ashpool.jdbc.MetaData
All Implemented Interfaces:
java.sql.DatabaseMetaData

public class MetaData
extends java.lang.Object
implements java.sql.DatabaseMetaData


Field Summary
private  Connection conn
          handle to the connection
 
Fields inherited from interface java.sql.DatabaseMetaData
attributeNoNulls, attributeNullable, attributeNullableUnknown, bestRowNotPseudo, bestRowPseudo, bestRowSession, bestRowTemporary, bestRowTransaction, bestRowUnknown, columnNoNulls, columnNullable, columnNullableUnknown, importedKeyCascade, importedKeyInitiallyDeferred, importedKeyInitiallyImmediate, importedKeyNoAction, importedKeyNotDeferrable, importedKeyRestrict, importedKeySetDefault, importedKeySetNull, procedureColumnIn, procedureColumnInOut, procedureColumnOut, procedureColumnResult, procedureColumnReturn, procedureColumnUnknown, procedureNoNulls, procedureNoResult, procedureNullable, procedureNullableUnknown, procedureResultUnknown, procedureReturnsResult, sqlStateSQL99, sqlStateXOpen, tableIndexClustered, tableIndexHashed, tableIndexOther, tableIndexStatistic, typeNoNulls, typeNullable, typeNullableUnknown, typePredBasic, typePredChar, typePredNone, typeSearchable, versionColumnNotPseudo, versionColumnPseudo, versionColumnUnknown
 
Constructor Summary
MetaData()
          Creates a new instance of MetaData
MetaData(Connection connhndl)
           
 
Method Summary
 boolean allProceduresAreCallable()
          Retrieves whether the current user can call all the procedures returned by the method getProcedures.
 boolean allTablesAreSelectable()
          Retrieves whether the current user can use all the tables returned by the method getTables in a SELECT statement.
 boolean dataDefinitionCausesTransactionCommit()
          Retrieves whether a data definition statement within a transaction forces the transaction to commit.
 boolean dataDefinitionIgnoredInTransactions()
          Retrieves whether this database ignores a data definition statement within a transaction.
 boolean deletesAreDetected(int type)
          Retrieves whether or not a visible row delete can be detected by calling the method ResultSet.rowDeleted.
 boolean doesMaxRowSizeIncludeBlobs()
          Retrieves whether the return value for the method getMaxRowSize includes the SQL data types LONGVARCHAR and LONGVARBINARY.
 java.sql.ResultSet getAttributes(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String typeNamePattern, java.lang.String attributeNamePattern)
          Retrieves a description of the given attribute of the given type for a user-defined type (UDT) that is available in the given schema and catalog.
 java.sql.ResultSet getBestRowIdentifier(java.lang.String catalog, java.lang.String schema, java.lang.String table, int scope, boolean nullable)
          Retrieves a description of a table's optimal set of columns that uniquely identifies a row.
 java.sql.ResultSet getCatalogs()
          Retrieves the catalog names available in this database.
 java.lang.String getCatalogSeparator()
          Retrieves the String that this database uses as the separator between a catalog and table name.
 java.lang.String getCatalogTerm()
          Retrieves the database vendor's preferred term for "catalog".
 java.sql.ResultSet getColumnPrivileges(java.lang.String catalog, java.lang.String schema, java.lang.String table, java.lang.String columnNamePattern)
          Retrieves a description of the access rights for a table's columns.
 java.sql.ResultSet getColumns(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern, java.lang.String columnNamePattern)
          Retrieves a description of table columns available in the specified catalog.
 java.sql.Connection getConnection()
          Retrieves the connection that produced this metadata object.
 java.sql.ResultSet getCrossReference(java.lang.String primaryCatalog, java.lang.String primarySchema, java.lang.String primaryTable, java.lang.String foreignCatalog, java.lang.String foreignSchema, java.lang.String foreignTable)
          Retrieves a description of the foreign key columns in the given foreign key table that reference the primary key columns of the given primary key table (describe how one table imports another's key).
 int getDatabaseMajorVersion()
          Retrieves the major version number of the underlying database.
 int getDatabaseMinorVersion()
          Retrieves the minor version number of the underlying database.
 java.lang.String getDatabaseProductName()
          Retrieves the name of this database product.
 java.lang.String getDatabaseProductVersion()
          Retrieves the version number of this database product.
 int getDefaultTransactionIsolation()
          Retrieves this database's default transaction isolation level.
 int getDriverMajorVersion()
          Retrieves this JDBC driver's major version number.
 int getDriverMinorVersion()
          Retrieves this JDBC driver's minor version number.
 java.lang.String getDriverName()
          Retrieves the name of this JDBC driver.
 java.lang.String getDriverVersion()
          Retrieves the version number of this JDBC driver as a String.
 java.sql.ResultSet getExportedKeys(java.lang.String catalog, java.lang.String schema, java.lang.String table)
          Retrieves a description of the foreign key columns that reference the given table's primary key columns (the foreign keys exported by a table).
 java.lang.String getExtraNameCharacters()
          Retrieves all the "extra" characters that can be used in unquoted identifier names (those beyond a-z, A-Z, 0-9 and _).
 java.lang.String getIdentifierQuoteString()
          Retrieves the string used to quote SQL identifiers.
 java.sql.ResultSet getImportedKeys(java.lang.String catalog, java.lang.String schema, java.lang.String table)
          Retrieves a description of the primary key columns that are referenced by a table's foreign key columns (the primary keys imported by a table).
 java.sql.ResultSet getIndexInfo(java.lang.String catalog, java.lang.String schema, java.lang.String table, boolean unique, boolean approximate)
          Retrieves a description of the given table's indices and statistics.
 int getJDBCMajorVersion()
          Retrieves the major JDBC version number for this driver.
 int getJDBCMinorVersion()
          Retrieves the minor JDBC version number for this driver.
 int getMaxBinaryLiteralLength()
          Retrieves the maximum number of hex characters this database allows in an inline binary literal.
 int getMaxCatalogNameLength()
          Retrieves the maximum number of characters that this database allows in a catalog name.
 int getMaxCharLiteralLength()
          Retrieves the maximum number of characters this database allows for a character literal.
 int getMaxColumnNameLength()
          Retrieves the maximum number of characters this database allows for a column name.
 int getMaxColumnsInGroupBy()
          Retrieves the maximum number of columns this database allows in a GROUP BY clause.
 int getMaxColumnsInIndex()
          Retrieves the maximum number of columns this database allows in an index.
 int getMaxColumnsInOrderBy()
          Retrieves the maximum number of columns this database allows in an ORDER BY clause.
 int getMaxColumnsInSelect()
          Retrieves the maximum number of columns this database allows in a SELECT list.
 int getMaxColumnsInTable()
          Retrieves the maximum number of columns this database allows in a table.
 int getMaxConnections()
          Retrieves the maximum number of concurrent connections to this database that are possible.
 int getMaxCursorNameLength()
          Retrieves the maximum number of characters that this database allows in a cursor name.
 int getMaxIndexLength()
          Retrieves the maximum number of bytes this database allows for an index, including all of the parts of the index.
 int getMaxProcedureNameLength()
          Retrieves the maximum number of characters that this database allows in a procedure name.
 int getMaxRowSize()
          Retrieves the maximum number of bytes this database allows in a single row.
 int getMaxSchemaNameLength()
          Retrieves the maximum number of characters that this database allows in a schema name.
 int getMaxStatementLength()
          Retrieves the maximum number of characters this database allows in an SQL statement.
 int getMaxStatements()
          Retrieves the maximum number of active statements to this database that can be open at the same time.
 int getMaxTableNameLength()
          Retrieves the maximum number of characters this database allows in a table name.
 int getMaxTablesInSelect()
          Retrieves the maximum number of tables this database allows in a SELECT statement.
 int getMaxUserNameLength()
          Retrieves the maximum number of characters this database allows in a user name.
 java.lang.String getNumericFunctions()
          Retrieves a comma-separated list of math functions available with this database.
 java.sql.ResultSet getPrimaryKeys(java.lang.String catalog, java.lang.String schema, java.lang.String table)
          Retrieves a description of the given table's primary key columns.
 java.sql.ResultSet getProcedureColumns(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String procedureNamePattern, java.lang.String columnNamePattern)
          Retrieves a description of the given catalog's stored procedure parameter and result columns.
 java.sql.ResultSet getProcedures(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String procedureNamePattern)
          Retrieves a description of the stored procedures available in the given catalog.
 java.lang.String getProcedureTerm()
          Retrieves the database vendor's preferred term for "procedure".
 int getResultSetHoldability()
          Retrieves the default holdability of this ResultSet object.
 java.sql.ResultSet getSchemas()
          Retrieves the schema names available in this database.
 java.lang.String getSchemaTerm()
          Retrieves the database vendor's preferred term for "schema".
 java.lang.String getSearchStringEscape()
          Retrieves the string that can be used to escape wildcard characters.
 java.lang.String getSQLKeywords()
          Retrieves a comma-separated list of all of this database's SQL keywords that are NOT also SQL92 keywords.
 int getSQLStateType()
          Indicates whether the SQLSTATEs returned by SQLException.getSQLState is X/Open (now known as Open Group) SQL CLI or SQL99.
 java.lang.String getStringFunctions()
          Retrieves a comma-separated list of string functions available with this database.
 java.sql.ResultSet getSuperTables(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern)
          Retrieves a description of the table hierarchies defined in a particular schema in this database.
 java.sql.ResultSet getSuperTypes(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String typeNamePattern)
          Retrieves a description of the user-defined type (UDT) hierarchies defined in a particular schema in this database.
 java.lang.String getSystemFunctions()
          Retrieves a comma-separated list of system functions available with this database.
 java.sql.ResultSet getTablePrivileges(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern)
          Retrieves a description of the access rights for each table available in a catalog.
 java.sql.ResultSet getTables(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String tableNamePattern, java.lang.String[] types)
          Retrieves a description of the tables available in the given catalog.
 java.sql.ResultSet getTableTypes()
          Retrieves the table types available in this database.
 java.lang.String getTimeDateFunctions()
          Retrieves a comma-separated list of the time and date functions available with this database.
 java.sql.ResultSet getTypeInfo()
          Retrieves a description of all the standard SQL types supported by this database.
 java.sql.ResultSet getUDTs(java.lang.String catalog, java.lang.String schemaPattern, java.lang.String typeNamePattern, int[] types)
          Retrieves a description of the user-defined types (UDTs) defined in a particular schema.
 java.lang.String getURL()
          Retrieves the URL for this DBMS.
 java.lang.String getUserName()
          Retrieves the user name as known to this database.
 java.sql.ResultSet getVersionColumns(java.lang.String catalog, java.lang.String schema, java.lang.String table)
          Retrieves a description of a table's columns that are automatically updated when any value in a row is updated.
 boolean insertsAreDetected(int type)
          Retrieves whether or not a visible row insert can be detected by calling the method ResultSet.rowInserted.
 boolean isCatalogAtStart()
          Retrieves whether a catalog appears at the start of a fully qualified table name.
 boolean isReadOnly()
          Retrieves whether this database is in read-only mode.
 boolean locatorsUpdateCopy()
          Indicates whether updates made to a LOB are made on a copy or directly to the LOB.
 boolean nullPlusNonNullIsNull()
          Retrieves whether this database supports concatenations between NULL and non-NULL values being NULL.
 boolean nullsAreSortedAtEnd()
          Retrieves whether NULL values are sorted at the end regardless of sort order.
 boolean nullsAreSortedAtStart()
          Retrieves whether NULL values are sorted at the start regardless of sort order.
 boolean nullsAreSortedHigh()
          Retrieves whether NULL values are sorted high.
 boolean nullsAreSortedLow()
          Retrieves whether NULL values are sorted low.
 boolean othersDeletesAreVisible(int type)
          Retrieves whether deletes made by others are visible.
 boolean othersInsertsAreVisible(int type)
          Retrieves whether inserts made by others are visible.
 boolean othersUpdatesAreVisible(int type)
          Retrieves whether updates made by others are visible.
 boolean ownDeletesAreVisible(int type)
          Retrieves whether a result set's own deletes are visible.
 boolean ownInsertsAreVisible(int type)
          Retrieves whether a result set's own inserts are visible.
 boolean ownUpdatesAreVisible(int type)
          Retrieves whether for the given type of ResultSet object, the result set's own updates are visible.
 boolean storesLowerCaseIdentifiers()
          Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in lower case.
 boolean storesLowerCaseQuotedIdentifiers()
          Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in lower case.
 boolean storesMixedCaseIdentifiers()
          Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in mixed case.
 boolean storesMixedCaseQuotedIdentifiers()
          Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in mixed case.
 boolean storesUpperCaseIdentifiers()
          Retrieves whether this database treats mixed case unquoted SQL identifiers as case insensitive and stores them in upper case.
 boolean storesUpperCaseQuotedIdentifiers()
          Retrieves whether this database treats mixed case quoted SQL identifiers as case insensitive and stores them in upper case.
 boolean supportsAlterTableWithAddColumn()
          Retrieves whether this database supports ALTER TABLE with add column.
 boolean supportsAlterTableWithDropColumn()
          Retrieves whether this database supports ALTER TABLE with drop column.
 boolean supportsANSI92EntryLevelSQL()
          Retrieves whether this database supports the ANSI92 entry level SQL grammar.
 boolean supportsANSI92FullSQL()
          Retrieves whether this database supports the ANSI92 full SQL grammar supported.
 boolean supportsANSI92IntermediateSQL()
          Retrieves whether this database supports the ANSI92 intermediate SQL grammar supported.
 boolean supportsBatchUpdates()
          Retrieves whether this database supports batch updates.
 boolean supportsCatalogsInDataManipulation()
          Retrieves whether a catalog name can be used in a data manipulation statement.
 boolean supportsCatalogsInIndexDefinitions()
          Retrieves whether a catalog name can be used in an index definition statement.
 boolean supportsCatalogsInPrivilegeDefinitions()
          Retrieves whether a catalog name can be used in a privilege definition statement.
 boolean supportsCatalogsInProcedureCalls()
          Retrieves whether a catalog name can be used in a procedure call statement.
 boolean supportsCatalogsInTableDefinitions()
          Retrieves whether a catalog name can be used in a table definition statement.
 boolean supportsColumnAliasing()
          Retrieves whether this database supports column aliasing.
 boolean supportsConvert()
          Retrieves whether this database supports the CONVERT function between SQL types.
 boolean supportsConvert(int fromType, int toType)
          Retrieves whether this database supports the CONVERT for two given SQL types.
 boolean supportsCoreSQLGrammar()
          Retrieves whether this database supports the ODBC Core SQL grammar.
 boolean supportsCorrelatedSubqueries()
          Retrieves whether this database supports correlated subqueries.
 boolean supportsDataDefinitionAndDataManipulationTransactions()
          Retrieves whether this database supports both data definition and data manipulation statements within a transaction.
 boolean supportsDataManipulationTransactionsOnly()
          Retrieves whether this database supports only data manipulation statements within a transaction.
 boolean supportsDifferentTableCorrelationNames()
          Retrieves whether, when table correlation names are supported, they are restricted to being different from the names of the tables.
 boolean supportsExpressionsInOrderBy()
          Retrieves whether this database supports expressions in ORDER BY lists.
 boolean supportsExtendedSQLGrammar()
          Retrieves whether this database supports the ODBC Extended SQL grammar.
 boolean supportsFullOuterJoins()
          Retrieves whether this database supports full nested outer joins.
 boolean supportsGetGeneratedKeys()
          Retrieves whether auto-generated keys can be retrieved after a statement has been executed.
 boolean supportsGroupBy()
          Retrieves whether this database supports some form of GROUP BY clause.
 boolean supportsGroupByBeyondSelect()
          Retrieves whether this database supports using columns not included in the SELECT statement in a GROUP BY clause provided that all of the columns in the SELECT statement are included in the GROUP BY clause.
 boolean supportsGroupByUnrelated()
          Retrieves whether this database supports using a column that is not in the SELECT statement in a GROUP BY clause.
 boolean supportsIntegrityEnhancementFacility()
          Retrieves whether this database supports the SQL Integrity Enhancement Facility.
 boolean supportsLikeEscapeClause()
          Retrieves whether this database supports specifying a LIKE escape clause.
 boolean supportsLimitedOuterJoins()
          Retrieves whether this database provides limited support for outer joins.
 boolean supportsMinimumSQLGrammar()
          Retrieves whether this database supports the ODBC Minimum SQL grammar.
 boolean supportsMixedCaseIdentifiers()
          Retrieves whether this database treats mixed case unquoted SQL identifiers as case sensitive and as a result stores them in mixed case.
 boolean supportsMixedCaseQuotedIdentifiers()
          Retrieves whether this database treats mixed case quoted SQL identifiers as case sensitive and as a result stores them in mixed case.
 boolean supportsMultipleOpenResults()
          Retrieves whether it is possible to have multiple ResultSet objects returned from a CallableStatement object simultaneously.
 boolean supportsMultipleResultSets()
          Retrieves whether this database supports getting multiple ResultSet objects from a single call to the method execute.
 boolean supportsMultipleTransactions()
          Retrieves whether this database allows having multiple transactions open at once (on different connections).
 boolean supportsNamedParameters()
          Retrieves whether this database supports named parameters to callable statements.
 boolean supportsNonNullableColumns()
          Retrieves whether columns in this database may be defined as non-nullable.
 boolean supportsOpenCursorsAcrossCommit()
          Retrieves whether this database supports keeping cursors open across commits.
 boolean supportsOpenCursorsAcrossRollback()
          Retrieves whether this database supports keeping cursors open across rollbacks.
 boolean supportsOpenStatementsAcrossCommit()
          Retrieves whether this database supports keeping statements open across commits.
 boolean supportsOpenStatementsAcrossRollback()
          Retrieves whether this database supports keeping statements open across rollbacks.
 boolean supportsOrderByUnrelated()
          Retrieves whether this database supports using a column that is not in the SELECT statement in an ORDER BY clause.
 boolean supportsOuterJoins()
          Retrieves whether this database supports some form of outer join.
 boolean supportsPositionedDelete()
          Retrieves whether this database supports positioned DELETE statements.
 boolean supportsPositionedUpdate()
          Retrieves whether this database supports positioned UPDATE statements.
 boolean supportsResultSetConcurrency(int type, int concurrency)
          Retrieves whether this database supports the given concurrency type in combination with the given result set type.
 boolean supportsResultSetHoldability(int holdability)
          Retrieves whether this database supports the given result set holdability.
 boolean supportsResultSetType(int type)
          Retrieves whether this database supports the given result set type.
 boolean supportsSavepoints()
          Retrieves whether this database supports savepoints.
 boolean supportsSchemasInDataManipulation()
          Retrieves whether a schema name can be used in a data manipulation statement.
 boolean supportsSchemasInIndexDefinitions()
          Retrieves whether a schema name can be used in an index definition statement.
 boolean supportsSchemasInPrivilegeDefinitions()
          Retrieves whether a schema name can be used in a privilege definition statement.
 boolean supportsSchemasInProcedureCalls()
          Retrieves whether a schema name can be used in a procedure call statement.
 boolean supportsSchemasInTableDefinitions()
          Retrieves whether a schema name can be used in a table definition statement.
 boolean supportsSelectForUpdate()
          Retrieves whether this database supports SELECT FOR UPDATE statements.
 boolean supportsStatementPooling()
          Retrieves weather this database supports statement pooling.
 boolean supportsStoredProcedures()
          Retrieves whether this database supports stored procedure calls that use the stored procedure escape syntax.
 boolean supportsSubqueriesInComparisons()
          Retrieves whether this database supports subqueries in comparison expressions.
 boolean supportsSubqueriesInExists()
          Retrieves whether this database supports subqueries in EXISTS expressions.
 boolean supportsSubqueriesInIns()
          Retrieves whether this database supports subqueries in IN statements.
 boolean supportsSubqueriesInQuantifieds()
          Retrieves whether this database supports subqueries in quantified expressions.
 boolean supportsTableCorrelationNames()
          Retrieves whether this database supports table correlation names.
 boolean supportsTransactionIsolationLevel(int level)
          Retrieves whether this database supports the given transaction isolation level.
 boolean supportsTransactions()
          Retrieves whether this database supports transactions.
 boolean supportsUnion()
          Retrieves whether this database supports SQL UNION.
 boolean supportsUnionAll()
          Retrieves whether this database supports SQL UNION ALL.
 boolean updatesAreDetected(int type)
          Retrieves whether or not a visible row update can be detected by calling the method ResultSet.rowUpdated.
 boolean usesLocalFilePerTable()
          Retrieves whether this database uses a file for each table.
 boolean usesLocalFiles()
          Retrieves whether this database stores tables in a local file.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

conn

private Connection conn
handle to the connection

Constructor Detail

MetaData

public MetaData()
Creates a new instance of MetaData


MetaData

public MetaData(Connection connhndl)
Method Detail

allProceduresAreCallable

public boolean allProceduresAreCallable()
                                 throws java.sql.SQLException
Retrieves whether the current user can call all the procedures returned by the method getProcedures.

Specified by:
allProceduresAreCallable in interface java.sql.DatabaseMetaData

allTablesAreSelectable

public boolean allTablesAreSelectable()
                               throws java.sql.SQLException
Retrieves whether the current user can use all the tables returned by the method getTables in a SELECT statement.

Specified by:
allTablesAreSelectable in interface java.sql.DatabaseMetaData

dataDefinitionCausesTransactionCommit

public boolean dataDefinitionCausesTransactionCommit()
                                              throws java.sql.SQLException
Retrieves whether a data definition statement within a transaction forces the transaction to commit.

Specified by:
dataDefinitionCausesTransactionCommit in interface java.sql.DatabaseMetaData

dataDefinitionIgnoredInTransactions

public boolean dataDefinitionIgnoredInTransactions()
                                            throws java.sql.SQLException
Retrieves whether this database ignores a data definition statement within a transaction.

Specified by:
dataDefinitionIgnoredInTransactions in interface java.sql.DatabaseMetaData

deletesAreDetected

public boolean deletesAreDetected(int type)
                           throws java.sql.SQLException
Retrieves whether or not a visible row delete can be detected by calling the method ResultSet.rowDeleted. If the method deletesAreDetected returns false, it means that deleted rows are removed from the result set.

Specified by:
deletesAreDetected in interface java.sql.DatabaseMetaData
Since:
1.2

doesMaxRowSizeIncludeBlobs

public boolean doesMaxRowSizeIncludeBlobs()
                                   throws java.sql.SQLException
Retrieves whether the return value for the method getMaxRowSize includes the SQL data types LONGVARCHAR and LONGVARBINARY.

Specified by:
doesMaxRowSizeIncludeBlobs in interface java.sql.DatabaseMetaData

getAttributes

public java.sql.ResultSet getAttributes(java.lang.String catalog,
                                        java.lang.String schemaPattern,
                                        java.lang.String typeNamePattern,
                                        java.lang.String attributeNamePattern)
                                 throws java.sql.SQLException
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.

Descriptions are returned only for attributes of UDTs matching the catalog, schema, type, and attribute name criteria. They are ordered by TYPE_SCHEM, TYPE_NAME and ORDINAL_POSITION. This description does not contain inherited attributes.

The ResultSet object that is returned has the following columns:

  1. TYPE_CAT String => type catalog (may be null)
  2. TYPE_SCHEM String => type schema (may be null)
  3. TYPE_NAME String => type name
  4. ATTR_NAME String => attribute name
  5. DATA_TYPE short => attribute type SQL type from java.sql.Types
  6. ATTR_TYPE_NAME String => Data source dependent type name. For a UDT, the type name is fully qualified. For a REF, the type name is fully qualified and represents the target type of the reference type.
  7. ATTR_SIZE int => column size. For char or date types this is the maximum number of characters; for numeric or decimal types this is precision.
  8. DECIMAL_DIGITS int => the number of fractional digits
  9. NUM_PREC_RADIX int => Radix (typically either 10 or 2)
  10. NULLABLE int => whether NULL is allowed
    • attributeNoNulls - might not allow NULL values
    • attributeNullable - definitely allows NULL values
    • attributeNullableUnknown - nullability unknown
  11. REMARKS String => comment describing column (may be null)
  12. ATTR_DEF String => default value (may be null)
  13. SQL_DATA_TYPE int => unused
  14. SQL_DATETIME_SUB int => unused
  15. CHAR_OCTET_LENGTH int => for char types the maximum number of bytes in the column
  16. ORDINAL_POSITION int => index of column in table (starting at 1)
  17. IS_NULLABLE String => "NO" means column definitely does not allow NULL values; "YES" means the column might allow NULL values. An empty string means unknown.
  18. SCOPE_CATALOG String => catalog of table that is the scope of a reference attribute (null if DATA_TYPE isn't REF)
  19. SCOPE_SCHEMA String => schema of table that is the scope of a reference attribute (null if DATA_TYPE isn't REF)
  20. SCOPE_TABLE String => table name that is the scope of a reference attribute (null if the DATA_TYPE isn't REF)
  21. SOURCE_DATA_TYPE short => source type of a distinct type or user-generated Ref type,SQL type from java.sql.Types (null if DATA_TYPE isn't DISTINCT or user-generated REF)

Specified by:
getAttributes in interface java.sql.DatabaseMetaData
Since:
1.4

getBestRowIdentifier

public java.sql.ResultSet getBestRowIdentifier(java.lang.String catalog,
                                               java.lang.String schema,
                                               java.lang.String table,
                                               int scope,
                                               boolean nullable)
                                        throws java.sql.SQLException
Retrieves a description of a table's optimal set of columns that uniquely identifies a row. They are ordered by SCOPE.

Each column description has the following columns:

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

Specified by:
getBestRowIdentifier in interface java.sql.DatabaseMetaData

getCatalogSeparator

public java.lang.String getCatalogSeparator()
                                     throws java.sql.SQLException
Retrieves the String that this database uses as the separator between a catalog and table name.

Specified by:
getCatalogSeparator in interface java.sql.DatabaseMetaData

getCatalogTerm

public java.lang.String getCatalogTerm()
                                throws java.sql.SQLException
Retrieves the database vendor's preferred term for "catalog".

Specified by:
getCatalogTerm in interface java.sql.DatabaseMetaData

getCatalogs

public java.sql.ResultSet getCatalogs()
                               throws java.sql.SQLException
Retrieves the catalog names available in this database. The results are ordered by catalog name.

The catalog column is:

  1. TABLE_CAT String => catalog name

Specified by:
getCatalogs in interface java.sql.DatabaseMetaData

getColumnPrivileges

public java.sql.ResultSet getColumnPrivileges(java.lang.String catalog,
                                              java.lang.String schema,
                                              java.lang.String table,
                                              java.lang.String columnNamePattern)
                                       throws java.sql.SQLException
Retrieves a description of the access rights for a table's columns.

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

Each privilige description has the following columns:

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

Specified by:
getColumnPrivileges in interface java.sql.DatabaseMetaData

getColumns

public java.sql.ResultSet getColumns(java.lang.String catalog,
                                     java.lang.String schemaPattern,
                                     java.lang.String tableNamePattern,
                                     java.lang.String columnNamePattern)
                              throws java.sql.SQLException
Retrieves a description of table columns available in the specified catalog.

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

Each column description has the following columns:

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

Specified by:
getColumns in interface java.sql.DatabaseMetaData

getConnection

public java.sql.Connection getConnection()
                                  throws java.sql.SQLException
Retrieves the connection that produced this metadata object.

Specified by:
getConnection in interface java.sql.DatabaseMetaData
Since:
1.2

getCrossReference

public java.sql.ResultSet getCrossReference(java.lang.String primaryCatalog,
                                            java.lang.String primarySchema,
                                            java.lang.String primaryTable,
                                            java.lang.String foreignCatalog,
                                            java.lang.String foreignSchema,
                                            java.lang.String foreignTable)
                                     throws java.sql.SQLException
Retrieves a description of the foreign key columns in the given foreign key table that reference the primary key columns of the given primary key table (describe how one table imports another's key). This should normally return a single foreign key/primary key pair because most tables import a foreign key from a table only once. They are ordered by FKTABLE_CAT, FKTABLE_SCHEM, FKTABLE_NAME, and KEY_SEQ.

Each foreign key column description has the following columns:

  1. PKTABLE_CAT String => primary key table catalog (may be null)
  2. PKTABLE_SCHEM String => primary key table schema (may be null)
  3. PKTABLE_NAME String => primary key table name
  4. PKCOLUMN_NAME String => primary key column name
  5. FKTABLE_CAT String => foreign key table catalog (may be null) being exported (may be null)
  6. FKTABLE_SCHEM String => foreign key table schema (may be null) being exported (may be null)
  7. FKTABLE_NAME String => foreign key table name being exported
  8. FKCOLUMN_NAME String => foreign key column name being exported
  9. KEY_SEQ short => sequence number within foreign key
  10. UPDATE_RULE short => What happens to foreign key when primary is updated:
    • importedNoAction - do not allow update of primary key if it has been imported
    • importedKeyCascade - change imported key to agree with primary key update
    • importedKeySetNull - change imported key to NULL if its primary key has been updated
    • importedKeySetDefault - change imported key to default values if its primary key has been updated
    • importedKeyRestrict - same as importedKeyNoAction (for ODBC 2.x compatibility)
  11. DELETE_RULE short => What happens to the foreign key when primary is deleted.
    • importedKeyNoAction - do not allow delete of primary key if it has been imported
    • importedKeyCascade - delete rows that import a deleted key
    • importedKeySetNull - change imported key to NULL if its primary key has been deleted
    • importedKeyRestrict - same as importedKeyNoAction (for ODBC 2.x compatibility)
    • importedKeySetDefault - change imported key to default if its primary key has been deleted
  12. FK_NAME String => foreign key name (may be null)
  13. PK_NAME String => primary key name (may be null)
  14. DEFERRABILITY short => can the evaluation of foreign key constraints be deferred until commit
    • importedKeyInitiallyDeferred - see SQL92 for definition
    • importedKeyInitiallyImmediate - see SQL92 for definition
    • importedKeyNotDeferrable - see SQL92 for definition

Specified by:
getCrossReference in interface java.sql.DatabaseMetaData

getDatabaseMajorVersion

public int getDatabaseMajorVersion()
                            throws java.sql.SQLException
Retrieves the major version number of the underlying database.

Specified by:
getDatabaseMajorVersion in interface java.sql.DatabaseMetaData
Since:
1.4

getDatabaseMinorVersion

public int getDatabaseMinorVersion()
                            throws java.sql.SQLException
Retrieves the minor version number of the underlying database.

Specified by:
getDatabaseMinorVersion in interface java.sql.DatabaseMetaData
Since:
1.4

getDatabaseProductName

public java.lang.String getDatabaseProductName()
                                        throws java.sql.SQLException
Retrieves the name of this database product.

Specified by:
getDatabaseProductName in interface java.sql.DatabaseMetaData

getDatabaseProductVersion

public java.lang.String getDatabaseProductVersion()
                                           throws java.sql.SQLException
Retrieves the version number of this database product.

Specified by:
getDatabaseProductVersion in interface java.sql.DatabaseMetaData

getDefaultTransactionIsolation

public int getDefaultTransactionIsolation()
                                   throws java.sql.SQLException
Retrieves this database's default transaction isolation level. The possible values are defined in java.sql.Connection.

Specified by:
getDefaultTransactionIsolation in interface java.sql.DatabaseMetaData

getDriverMajorVersion

public int getDriverMajorVersion()
Retrieves this JDBC driver's major version number.

Specified by:
getDriverMajorVersion in interface java.sql.DatabaseMetaData

getDriverMinorVersion

public int getDriverMinorVersion()
Retrieves this JDBC driver's minor version number.

Specified by:
getDriverMinorVersion in interface java.sql.DatabaseMetaData

getDriverName

public java.lang.String getDriverName()
                               throws java.sql.SQLException
Retrieves the name of this JDBC driver.

Specified by:
getDriverName in interface java.sql.DatabaseMetaData

getDriverVersion

public java.lang.String getDriverVersion()
                                  throws java.sql.SQLException
Retrieves the version number of this JDBC driver as a String.

Specified by:
getDriverVersion in interface java.sql.DatabaseMetaData

getExportedKeys

public java.sql.ResultSet getExportedKeys(java.lang.String catalog,
                                          java.lang.String schema,
                                          java.lang.String table)
                                   throws java.sql.SQLException
Retrieves a description of the foreign key columns that reference the given table's primary key columns (the foreign keys exported by a table). They are ordered by FKTABLE_CAT, FKTABLE_SCHEM, FKTABLE_NAME, and KEY_SEQ.

Each foreign key column description has the following columns:

  1. PKTABLE_CAT String => primary key table catalog (may be null)
  2. PKTABLE_SCHEM String => primary key table schema (may be null)
  3. PKTABLE_NAME String => primary key table name
  4. PKCOLUMN_NAME String => primary key column name
  5. FKTABLE_CAT String => foreign key table catalog (may be null) being exported (may be null)
  6. FKTABLE_SCHEM String => foreign key table schema (may be null) being exported (may be null)
  7. FKTABLE_NAME String => foreign key table name being exported
  8. FKCOLUMN_NAME String => foreign key column name being exported
  9. KEY_SEQ short => sequence number within foreign key
  10. UPDATE_RULE short => What happens to foreign key when primary is updated:
    • importedNoAction - do not allow update of primary key if it has been imported
    • importedKeyCascade - change imported key to agree with primary key update
    • importedKeySetNull - change imported key to NULL if its primary key has been updated
    • importedKeySetDefault - change imported key to default values if its primary key has been updated
    • importedKeyRestrict - same as importedKeyNoAction (for ODBC 2.x compatibility)
  11. DELETE_RULE short => What happens to the foreign key when primary is deleted.
    • importedKeyNoAction - do not allow delete of primary key if it has been imported
    • importedKeyCascade - delete rows that import a deleted key
    • importedKeySetNull - change imported key to NULL if its primary key has been deleted
    • importedKeyRestrict - same as importedKeyNoAction (for ODBC 2.x compatibility)
    • importedKeySetDefault - change imported key to default if its primary key has been deleted
  12. FK_NAME String => foreign key name (may be null)
  13. PK_NAME String => primary key name (may be null)
  14. DEFERRABILITY short => can the evaluation of foreign key constraints be deferred until commit
    • importedKeyInitiallyDeferred - see SQL92 for definition
    • importedKeyInitiallyImmediate - see SQL92 for definition
    • importedKeyNotDeferrable - see SQL92 for definition

Specified by:
getExportedKeys in interface java.sql.DatabaseMetaData

getExtraNameCharacters

public java.lang.String getExtraNameCharacters()
                                        throws java.sql.SQLException
Retrieves all the "extra" characters that can be used in unquoted identifier names (those beyond a-z, A-Z, 0-9 and _).

Specified by:
getExtraNameCharacters<