## com.mysql.jdbc
Class JDBC4DatabaseMetaDataUsingInfoSchema

    java.lang.Object
      com.mysql.jdbc.DatabaseMetaData
          com.mysql.jdbc.DatabaseMetaDataUsingInfoSchema
              com.mysql.jdbc.JDBC4DatabaseMetaDataUsingInfoSchema

All Implemented Interfaces:
  java.sql.DatabaseMetaData, java.sql.Wrapper

    public class JDBC4DatabaseMetaDataUsingInfoSchema

extends DatabaseMetaDataUsingInfoSchema

Nested Class Summary

Nested classes/interfaces inherited from class com.mysql.jdbc.DatabaseMetaData
`DatabaseMetaData.IteratorWithCleanup<T>, DatabaseMetaData.LocalAndReferencedColumns, DatabaseMetaData.ResultSetIterator, DatabaseMetaData.SingleStringIterator, DatabaseMetaData.TypeDescriptor`

Field Summary

Fields inherited from class com.mysql.jdbc.DatabaseMetaData
`conn, database, MAX_IDENTIFIER_LENGTH, quotedId, SYSTEM_TABLE_AS_BYTES, TABLE_AS_BYTES, VIEW_AS_BYTES`

Fields inherited from interface java.sql.DatabaseMetaData

`attributeNoNulls, attributeNullable, attributeNullableUnknown, bestRowNotPseudo, bestRowPseudo, bestRowSession, bestRowTemporary, bestRowTransaction, bestRowUnknown, columnNoNulls, columnNullable, columnNullableUnknown, functionColumnIn, functionColumnInOut, functionColumnOut, functionColumnResult, functionColumnUnknown, functionNoNulls, functionNoTable, functionNullable, functionNullableUnknown, functionResultUnknown, functionReturn, functionReturnsTable, importedKeyCascade, importedKeyInitiallyDeferred, importedKeyInitiallyImmediate, importedKeyNoAction, importedKeyNotDeferrable, importedKeyRestrict, importedKeySetDefault, importedKeySetNull, procedureColumnIn, procedureColumnInOut, procedureColumnOut, procedureColumnResult, procedureColumnReturn, procedureColumnUnknown, procedureNoNulls, procedureNoResult, procedureNullable, procedureNullableUnknown, procedureResultUnknown, procedureReturnsResult, sqlStateSQL, sqlStateSQL99, sqlStateXOpen, tableIndexClustered, tableIndexHashed, tableIndexOther, tableIndexStatistic, typeNoNulls, typeNullable, typeNullableUnknown, typePredBasic, typePredChar, typePredNone, typeSearchable, versionColumnNotPseudo, versionColumnPseudo, versionColumnUnknown`

Constructor Summary
`JDBC4DatabaseMetaDataUsingInfoSchema(MySQLConnection connToSet, java.lang.String databaseToSet)`

Method Summary
`protected int` `getJDBC4FunctionNoTableConstant()`
`java.sql.RowIdLifetime` `getRowIdLifetime()`
`boolean` `isWrapperFor(java.lang.Class<?> iface)` Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does.

`

`<T> T`

`

`unwrap(java.lang.Class<T> iface)`
Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy.

Methods inherited from class com.mysql.jdbc.DatabaseMetaDataUsingInfoSchema
`getColumnPrivileges, getColumns, getCrossReference, getExportedKeys, getFunctionColumns, gethasParametersView, getImportedKeys, getIndexInfo, getPrimaryKeys, getProcedureColumns, getProcedures, getTables, getVersionColumns`

Methods inherited from class com.mysql.jdbc.DatabaseMetaData

`allProceduresAreCallable, allTablesAreSelectable, buildResultSet, convertToJdbcFunctionList, convertToJdbcProcedureList, createColumnsFields, createFkMetadataFields, createFunctionColumnsFields, createIndexInfoFields, createProcedureColumnsFields, dataDefinitionCausesTransactionCommit, dataDefinitionIgnoredInTransactions, deletesAreDetected, doesMaxRowSizeIncludeBlobs, extractForeignKeyForTable, extractForeignKeyFromCreateTable, generatedKeyAlwaysReturned, getAttributes, getBestRowIdentifier, getCallStmtParameterTypes, getCatalogIterator, getCatalogs, getCatalogSeparator, getCatalogTerm, getConnection, getDatabaseMajorVersion, getDatabaseMinorVersion, getDatabaseProductName, getDatabaseProductVersion, getDefaultTransactionIsolation, getDriverMajorVersion, getDriverMinorVersion, getDriverName, getDriverVersion, getExceptionInterceptor, getExportKeyResults, getExtraNameCharacters, getForeignKeyActions, getIdentifierQuoteString, getImportKeyResults, getInstance, getJDBCMajorVersion, getJDBCMinorVersion, getMaxBinaryLiteralLength, getMaxCatalogNameLength, getMaxCharLiteralLength, getMaxColumnNameLength, getMaxColumnsInGroupBy, getMaxColumnsInIndex, getMaxColumnsInOrderBy, getMaxColumnsInSelect, getMaxColumnsInTable, getMaxConnections, getMaxCursorNameLength, getMaxIndexLength, getMaxProcedureNameLength, getMaxRowSize, getMaxSchemaNameLength, getMaxStatementLength, getMaxStatements, getMaxTableNameLength, getMaxTablesInSelect, getMaxUserNameLength, getNumericFunctions, getProcedureOrFunctionColumns, getProceduresAndOrFunctions, getProcedureTerm, getPseudoColumns, getResultSetHoldability, getSchemas, getSchemas, getSchemaTerm, getSearchStringEscape, getSQLKeywords, getSQLStateType, getStringFunctions, getSuperTables, getSuperTypes, getSystemFunctions, getTableNameWithCase, getTablePrivileges, getTableTypes, getTimeDateFunctions, getTypeInfo, getUDTs, getURL, getUserName, insertsAreDetected, isCatalogAtStart, isReadOnly, locatorsUpdateCopy, nullPlusNonNullIsNull, nullsAreSortedAtEnd, nullsAreSortedAtStart, nullsAreSortedHigh, nullsAreSortedLow, othersDeletesAreVisible, othersInsertsAreVisible, othersUpdatesAreVisible, ownDeletesAreVisible, ownInsertsAreVisible, ownUpdatesAreVisible, parseTableStatusIntoLocalAndReferencedColumns, prepareMetaDataSafeStatement, providesQueryObjectGenerator, removeQuotedId, s2b, storesLowerCaseIdentifiers, storesLowerCaseQuotedIdentifiers, storesMixedCaseIdentifiers, storesMixedCaseQuotedIdentifiers, storesUpperCaseIdentifiers, storesUpperCaseQuotedIdentifiers, supportsAlterTableWithAddColumn, supportsAlterTableWithDropColumn, supportsANSI92EntryLevelSQL, supportsANSI92FullSQL, supportsANSI92IntermediateSQL, supportsBatchUpdates, supportsCatalogsInDataManipulation, supportsCatalogsInIndexDefinitions, supportsCatalogsInPrivilegeDefinitions, supportsCatalogsInProcedureCalls, supportsCatalogsInTableDefinitions, supportsColumnAliasing, supportsConvert, supportsConvert, supportsCoreSQLGrammar, supportsCorrelatedSubqueries, supportsDataDefinitionAndDataManipulationTransactions, supportsDataManipulationTransactionsOnly, supportsDifferentTableCorrelationNames, supportsExpressionsInOrderBy, supportsExtendedSQLGrammar, supportsFullOuterJoins, supportsGetGeneratedKeys, supportsGroupBy, supportsGroupByBeyondSelect, supportsGroupByUnrelated, supportsIntegrityEnhancementFacility, supportsLikeEscapeClause, supportsLimitedOuterJoins, supportsMinimumSQLGrammar, supportsMixedCaseIdentifiers, supportsMixedCaseQuotedIdentifiers, supportsMultipleOpenResults, supportsMultipleResultSets, supportsMultipleTransactions, supportsNamedParameters, supportsNonNullableColumns, supportsOpenCursorsAcrossCommit, supportsOpenCursorsAcrossRollback, supportsOpenStatementsAcrossCommit, supportsOpenStatementsAcrossRollback, supportsOrderByUnrelated, supportsOuterJoins, supportsPositionedDelete, supportsPositionedUpdate, supportsResultSetConcurrency, supportsResultSetHoldability, supportsResultSetType, supportsSavepoints, supportsSchemasInDataManipulation, supportsSchemasInIndexDefinitions, supportsSchemasInPrivilegeDefinitions, supportsSchemasInProcedureCalls, supportsSchemasInTableDefinitions, supportsSelectForUpdate, supportsStatementPooling, supportsStoredFunctionsUsingCallSyntax, supportsStoredProcedures, supportsSubqueriesInComparisons, supportsSubqueriesInExists, supportsSubqueriesInIns, supportsSubqueriesInQuantifieds, supportsTableCorrelationNames, supportsTransactionIsolationLevel, supportsTransactions, supportsUnion, supportsUnionAll, unQuoteQuotedIdentifier, updatesAreDetected, usesLocalFilePerTable, usesLocalFiles`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface java.sql.DatabaseMetaData
`autoCommitFailureClosesAllResultSets, getClientInfoProperties, getFunctions`

Constructor Detail

### JDBC4DatabaseMetaDataUsingInfoSchema

    public JDBC4DatabaseMetaDataUsingInfoSchema(MySQLConnection connToSet,
                                                java.lang.String databaseToSet)
                                         throws java.sql.SQLException

Throws:
  `java.sql.SQLException`

Method Detail

### getRowIdLifetime

    public java.sql.RowIdLifetime getRowIdLifetime()
                                            throws java.sql.SQLException

  Throws:
    `java.sql.SQLException`

### isWrapperFor

    public boolean isWrapperFor(java.lang.Class<?> iface)
                         throws java.sql.SQLException

  Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does. Returns false otherwise. If this implements the interface then return true, else if this is a wrapper then return the result of recursively calling `isWrapperFor` on the wrapped object. If this does not implement the interface and is not a wrapper, return false. This method should be implemented as a low-cost operation compared to `unwrap` so that callers can use this method to avoid expensive `unwrap` calls that may fail. If this method returns true then calling `unwrap` with the same argument should succeed.

  Parameters:
    `interfaces` - a Class defining an interface.
  Returns:
    true if this implements the interface or directly or indirectly wraps an object that does.
  Throws:
    `java.sql.SQLException` - if an error occurs while determining whether this is a wrapper for an object with the given interface.
  Since:
    1.6

### unwrap

    public <T> T unwrap(java.lang.Class<T> iface)
             throws java.sql.SQLException

  Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy. The result may be either the object found to implement the interface or a proxy for that object. If the receiver implements the interface then that is the object. If the receiver is a wrapper and the wrapped object implements the interface then that is the object. Otherwise the object is the result of calling `unwrap` recursively on the wrapped object. If the receiver is not a wrapper and does not implement the interface, then an `SQLException` is thrown.

  Parameters:
    `iface` - A Class defining an interface that the result must implement.
  Returns:
    an object that implements the interface. May be a proxy for the actual implementing object.
  Throws:
    `java.sql.SQLException` - If no object found that implements the interface
  Since:
    1.6

### getJDBC4FunctionNoTableConstant

    protected int getJDBC4FunctionNoTableConstant()

  Overrides:
    `getJDBC4FunctionNoTableConstant` in class `DatabaseMetaData`