org.modeshape.jdbc

## Class JcrMetaData

- java.lang.Object
- - org.modeshape.jdbc.JcrMetaData

- All Implemented Interfaces:
    DatabaseMetaData, Wrapper
  Direct Known Subclasses:
    ModeShapeMetaData

      public class JcrMetaData
      extends Object
      implements DatabaseMetaData

  This driver's implementation of JDBC `DatabaseMetaData`.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected static class` | `JcrMetaData.PseudoPropertyDefinition`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected static Integer` | `DEFAULT_ZERO`
    `protected static int` | `NO_LIMIT`
    `protected static List<PropertyDefinition>` | `PSEUDO_COLUMN_DEFNS`
    `protected static List<String>` | `PSEUDO_COLUMN_NAMES`
    `protected static String` | `WILDCARD` CONSTANTS

    - ### 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

    Constructors
    Constructor and Description
    `JcrMetaData(JcrConnection connection)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `allProceduresAreCallable()`
    `boolean` | `allTablesAreSelectable()`
    `boolean` | `autoCommitFailureClosesAllResultSets()`
    `boolean` | `dataDefinitionCausesTransactionCommit()`
    `boolean` | `dataDefinitionIgnoredInTransactions()`
    `boolean` | `deletesAreDetected(int type)`
    `boolean` | `doesMaxRowSizeIncludeBlobs()`
    `boolean` | `generatedKeyAlwaysReturned()` This method always returns true. * Note: This method is part of the JDBC API in JDK 1.7.
    `ResultSet` | `getAttributes(String catalog, String schemaPattern, String typeNamePattern, String attributeNamePattern)`
    `ResultSet` | `getBestRowIdentifier(String catalog, String schema, String table, int scope, boolean nullable)`
    `ResultSet` | `getCatalogs()` This driver maps the repository name as the JDBC catalog name.
    `String` | `getCatalogSeparator()`
    `String` | `getCatalogTerm()` This driver maps the repository name as the JDBC catalog name.
    `ResultSet` | `getClientInfoProperties()`
    `ResultSet` | `getColumnPrivileges(String catalog, String schema, String table, String columnNamePattern)`
    `ResultSet` | `getColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern)`
    `Connection` | `getConnection()`
    `ResultSet` | `getCrossReference(String parentCatalog, String parentSchema, String parentTable, String foreignCatalog, String foreignSchema, String foreignTable)`
    `int` | `getDatabaseMajorVersion()`
    `int` | `getDatabaseMinorVersion()`
    `String` | `getDatabaseProductName()`
    `String` | `getDatabaseProductUrl()`
    `String` | `getDatabaseProductVersion()`
    `int` | `getDefaultTransactionIsolation()`
    `int` | `getDriverMajorVersion()`
    `int` | `getDriverMinorVersion()`
    `String` | `getDriverName()`
    `String` | `getDriverVersion()`
    `ResultSet` | `getExportedKeys(String catalog, String schema, String table)` This driver maps REFERENCE properties as keys, and therefore it represents as imported keys those REFERENCE properties on the type identified by the table name.
    `String` | `getExtraNameCharacters()`
    `ResultSet` | `getFunctionColumns(String catalog, String schemaPattern, String functionNamePattern, String columnNamePattern)`
    `ResultSet` | `getFunctions(String catalog, String schemaPattern, String functionNamePattern)`
    `String` | `getIdentifierQuoteString()` JCR-SQL2 allows identifiers to be surrounded by matching single quotes, double quotes, or opening and closing square brackets.
    `ResultSet` | `getImportedKeys(String catalog, String schema, String table)` This driver maps REFERENCE properties as keys, and therefore it represents as imported keys those properties on other types referencing the type identified by the table name.
    `ResultSet` | `getIndexInfo(String catalog, String schema, String tableNamePattern, boolean unique, boolean approximate)`
    `int` | `getJDBCMajorVersion()`
    `int` | `getJDBCMinorVersion()`
    `int` | `getMaxBinaryLiteralLength()` There is no maximum length of binary literals (or if there is a limit it is not known), so this method returns 0.
    `int` | `getMaxCatalogNameLength()` There is no maximum length of the catalog (repository) names - or the limit is not known.
    `int` | `getMaxCharLiteralLength()` There is no maximum length of character literals (or if there is a limit it is not known), so this method returns 0.
    `int` | `getMaxColumnNameLength()` There is no maximum length of column names (or if there is a limit it is not known), so this method returns 0.
    `int` | `getMaxColumnsInGroupBy()` JCR-SQL2 does not support GROUP BY, so this method returns 0.
    `int` | `getMaxColumnsInIndex()` There is no limit to the number of columns in an index (or if there is a limit it is not known), so this method returns 0.
    `int` | `getMaxColumnsInOrderBy()` There is no limit to the number of columns in an ORDER BY statement (or if there is a limit it is not known), so this method returns 0.
    `int` | `getMaxColumnsInSelect()` There is no limit to the number of columns in a select statement (or if there is a limit it is not known), so this method returns 0.
    `int` | `getMaxColumnsInTable()` There is no limit to the number of columns in a table (or if there is a limit it is not known), so this method returns 0.
    `int` | `getMaxConnections()` There is no limit to the number of connections (or if there is a limit it is not known), so this method returns 0.
    `int` | `getMaxCursorNameLength()` There are no cursors (or there is no limit), so this method returns 0.
    `int` | `getMaxIndexLength()` There are no indexes (or there is no limit), so this method returns 0.
    `int` | `getMaxProcedureNameLength()` There are no procedures, so this method returns 0.
    `int` | `getMaxRowSize()` There is no maximum row size.
    `int` | `getMaxSchemaNameLength()` There is no maximum length of the schema (workspace) names - or the limit is not known.
    `int` | `getMaxStatementLength()`
    `int` | `getMaxStatements()`
    `int` | `getMaxTableNameLength()`
    `int` | `getMaxTablesInSelect()`
    `int` | `getMaxUserNameLength()`
    `String` | `getNumericFunctions()`
    `ResultSet` | `getPrimaryKeys(String catalog, String schema, String tableNamePattern)`
    `ResultSet` | `getProcedureColumns(String catalog, String schemaPattern, String procedureNamePattern, String columnNamePattern)`
    `ResultSet` | `getProcedures(String catalog, String schemaPattern, String procedureNamePattern)`
    `String` | `getProcedureTerm()`
    `ResultSet` | `getPseudoColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern)` This method always returns an emtpy result set. * Note: This method is part of the JDBC API in JDK 1.7.
    `int` | `getResultSetHoldability()`
    `RowIdLifetime` | `getRowIdLifetime()`
    `ResultSet` | `getSchemas()`
    `ResultSet` | `getSchemas(String catalog, String schemaPattern)`
    `String` | `getSchemaTerm()`
    `String` | `getSearchStringEscape()`
    `String` | `getSQLKeywords()`
    `int` | `getSQLStateType()`
    `String` | `getStringFunctions()`
    `ResultSet` | `getSuperTables(String catalog, String schemaPattern, String tableNamePattern)`
    `ResultSet` | `getSuperTypes(String catalog, String schemaPattern, String typeNamePattern)`
    `String` | `getSystemFunctions()`
    `ResultSet` | `getTablePrivileges(String catalog, String schemaPattern, String tableNamePattern)`
    `ResultSet` | `getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)`
    `ResultSet` | `getTableTypes()`
    `String` | `getTimeDateFunctions()`
    `ResultSet` | `getTypeInfo()`
    `ResultSet` | `getUDTs(String catalog, String schemaPattern, String typeNamePattern, int[] types)`
    `String` | `getURL()` This method returns the effective URL of the connection, which includes all connection properties (even if those properties were passed in via the Properties argument).
    `String` | `getUserName()`
    `ResultSet` | `getVersionColumns(String catalog, String schema, String table)`
    `boolean` | `insertsAreDetected(int type)`
    `boolean` | `isCatalogAtStart()`
    `boolean` | `isReadOnly()`
    `boolean` | `isWrapperFor(Class<?> iface)`
    `boolean` | `locatorsUpdateCopy()`
    `boolean` | `nullPlusNonNullIsNull()`
    `boolean` | `nullsAreSortedAtEnd()` Assumed to be false for JCR implementations (meaning that sort order IS used), though section 6.7.37 of JCR 2.0 specification says ordering of null values is implementation-determined.
    `boolean` | `nullsAreSortedAtStart()` Assumed to be false for JCR implementations (meaning that sort order IS used), though section 6.7.37 of JCR 2.0 specification says ordering of null values is implementation-determined.
    `boolean` | `nullsAreSortedHigh()` Assumed to be false for JCR implementations, though section 6.7.37 of JCR 2.0 specification says ordering of null values is implementation-determined.
    `boolean` | `nullsAreSortedLow()` Assumed to be true for JCR implementations, though section 6.7.37 of JCR 2.0 specification says ordering of null values is implementation-determined.
    `boolean` | `othersDeletesAreVisible(int type)`
    `boolean` | `othersInsertsAreVisible(int type)`
    `boolean` | `othersUpdatesAreVisible(int type)`
    `boolean` | `ownDeletesAreVisible(int type)`
    `boolean` | `ownInsertsAreVisible(int type)`
    `boolean` | `ownUpdatesAreVisible(int type)`
    `boolean` | `storesLowerCaseIdentifiers()`
    `boolean` | `storesLowerCaseQuotedIdentifiers()`
    `boolean` | `storesMixedCaseIdentifiers()`
    `boolean` | `storesMixedCaseQuotedIdentifiers()`
    `boolean` | `storesUpperCaseIdentifiers()`
    `boolean` | `storesUpperCaseQuotedIdentifiers()`
    `boolean` | `supportsAlterTableWithAddColumn()`
    `boolean` | `supportsAlterTableWithDropColumn()`
    `boolean` | `supportsANSI92EntryLevelSQL()`
    `boolean` | `supportsANSI92FullSQL()`
    `boolean` | `supportsANSI92IntermediateSQL()`
    `boolean` | `supportsBatchUpdates()`
    `boolean` | `supportsCatalogsInDataManipulation()`
    `boolean` | `supportsCatalogsInIndexDefinitions()`
    `boolean` | `supportsCatalogsInPrivilegeDefinitions()`
    `boolean` | `supportsCatalogsInProcedureCalls()`
    `boolean` | `supportsCatalogsInTableDefinitions()`
    `boolean` | `supportsColumnAliasing()`
    `boolean` | `supportsConvert()`
    `boolean` | `supportsConvert(int fromType, int toType)`
    `boolean` | `supportsCoreSQLGrammar()`
    `boolean` | `supportsCorrelatedSubqueries()`
    `boolean` | `supportsDataDefinitionAndDataManipulationTransactions()`
    `boolean` | `supportsDataManipulationTransactionsOnly()`
    `boolean` | `supportsDifferentTableCorrelationNames()`
    `boolean` | `supportsExpressionsInOrderBy()`
    `boolean` | `supportsExtendedSQLGrammar()`
    `boolean` | `supportsFullOuterJoins()`
    `boolean` | `supportsGetGeneratedKeys()`
    `boolean` | `supportsGroupBy()`
    `boolean` | `supportsGroupByBeyondSelect()`
    `boolean` | `supportsGroupByUnrelated()`
    `boolean` | `supportsIntegrityEnhancementFacility()`
    `boolean` | `supportsLikeEscapeClause()`
    `boolean` | `supportsLimitedOuterJoins()`
    `boolean` | `supportsMinimumSQLGrammar()`
    `boolean` | `supportsMixedCaseIdentifiers()`
    `boolean` | `supportsMixedCaseQuotedIdentifiers()`
    `boolean` | `supportsMultipleOpenResults()`
    `boolean` | `supportsMultipleResultSets()`
    `boolean` | `supportsMultipleTransactions()`
    `boolean` | `supportsNamedParameters()`
    `boolean` | `supportsNonNullableColumns()`
    `boolean` | `supportsOpenCursorsAcrossCommit()`
    `boolean` | `supportsOpenCursorsAcrossRollback()`
    `boolean` | `supportsOpenStatementsAcrossCommit()`
    `boolean` | `supportsOpenStatementsAcrossRollback()`
    `boolean` | `supportsOrderByUnrelated()`
    `boolean` | `supportsOuterJoins()`
    `boolean` | `supportsPositionedDelete()`
    `boolean` | `supportsPositionedUpdate()`
    `boolean` | `supportsResultSetConcurrency(int type, int concurrency)`
    `boolean` | `supportsResultSetHoldability(int holdability)`
    `boolean` | `supportsResultSetType(int type)`
    `boolean` | `supportsSavepoints()`
    `boolean` | `supportsSchemasInDataManipulation()`
    `boolean` | `supportsSchemasInIndexDefinitions()`
    `boolean` | `supportsSchemasInPrivilegeDefinitions()`
    `boolean` | `supportsSchemasInProcedureCalls()`
    `boolean` | `supportsSchemasInTableDefinitions()`
    `boolean` | `supportsSelectForUpdate()`
    `boolean` | `supportsStatementPooling()`
    `boolean` | `supportsStoredFunctionsUsingCallSyntax()`
    `boolean` | `supportsStoredProcedures()`
    `boolean` | `supportsSubqueriesInComparisons()`
    `boolean` | `supportsSubqueriesInExists()`
    `boolean` | `supportsSubqueriesInIns()`
    `boolean` | `supportsSubqueriesInQuantifieds()`
    `boolean` | `supportsTableCorrelationNames()`
    `boolean` | `supportsTransactionIsolationLevel(int level)`
    `boolean` | `supportsTransactions()`
    `boolean` | `supportsUnion()`
    `boolean` | `supportsUnionAll()`
    `<T> T` | `unwrap(Class<T> iface)`
    `boolean` | `updatesAreDetected(int type)`
    `boolean` | `usesLocalFilePerTable()`
    `boolean` | `usesLocalFiles()`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### PSEUDO_COLUMN_DEFNS

          protected static final List<PropertyDefinition> PSEUDO_COLUMN_DEFNS

    - #### PSEUDO_COLUMN_NAMES

          protected static final List<String> PSEUDO_COLUMN_NAMES

    - #### WILDCARD

          protected static final String WILDCARD

      CONSTANTS
      See Also:
        Constant Field Values

    - #### DEFAULT_ZERO

          protected static final Integer DEFAULT_ZERO

    - #### NO_LIMIT

          protected static final int NO_LIMIT

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### JcrMetaData

          public JcrMetaData(JcrConnection connection)

  - ### Method Detail

    - #### getPseudoColumns

          public ResultSet getPseudoColumns(String catalog,
                                   String schemaPattern,
                                   String tableNamePattern,
                                   String columnNamePattern)
                                     throws SQLException

      This method always returns an emtpy result set. *

      Note: This method is part of the JDBC API in JDK 1.7.

      Specified by:
        `getPseudoColumns` in interface `DatabaseMetaData`
      Parameters:
        `catalog` -
        `schemaPattern` -
        `tableNamePattern` -
        `columnNamePattern` -
      Returns:
        the pseudo columns
      Throws:
        `SQLException`

    - #### generatedKeyAlwaysReturned

          public boolean generatedKeyAlwaysReturned()
                                             throws SQLException

      This method always returns true. *

      Note: This method is part of the JDBC API in JDK 1.7.

      Specified by:
        `generatedKeyAlwaysReturned` in interface `DatabaseMetaData`
      Returns:
        true
      Throws:
        `SQLException`

    - #### getDriverMajorVersion

          public int getDriverMajorVersion()

      Specified by:
        `getDriverMajorVersion` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getDriverMajorVersion()`

    - #### getDriverMinorVersion

          public int getDriverMinorVersion()

      Specified by:
        `getDriverMinorVersion` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getDriverMinorVersion()`

    - #### getDriverName

          public String getDriverName()

      Specified by:
        `getDriverName` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getDriverName()`

    - #### getDriverVersion

          public String getDriverVersion()

      Specified by:
        `getDriverVersion` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getDriverVersion()`

    - #### getDatabaseMajorVersion

          public int getDatabaseMajorVersion()

      Specified by:
        `getDatabaseMajorVersion` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getDatabaseMajorVersion()`

    - #### getDatabaseMinorVersion

          public int getDatabaseMinorVersion()

      Specified by:
        `getDatabaseMinorVersion` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getDatabaseMinorVersion()`

    - #### getDatabaseProductName

          public String getDatabaseProductName()

      Specified by:
        `getDatabaseProductName` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getDatabaseProductName()`

    - #### getDatabaseProductUrl

          public String getDatabaseProductUrl()

    - #### getDatabaseProductVersion

          public String getDatabaseProductVersion()

      Specified by:
        `getDatabaseProductVersion` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getDatabaseProductVersion()`

    - #### getJDBCMajorVersion

          public int getJDBCMajorVersion()

      Specified by:
        `getJDBCMajorVersion` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getJDBCMajorVersion()`

    - #### getJDBCMinorVersion

          public int getJDBCMinorVersion()

      Specified by:
        `getJDBCMinorVersion` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getJDBCMinorVersion()`

    - #### getConnection

          public Connection getConnection()

      Specified by:
        `getConnection` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getConnection()`

    - #### isReadOnly

          public boolean isReadOnly()

      Specified by:
        `isReadOnly` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.isReadOnly()`

    - #### allProceduresAreCallable

          public boolean allProceduresAreCallable()

      Specified by:
        `allProceduresAreCallable` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.allProceduresAreCallable()`

    - #### allTablesAreSelectable

          public boolean allTablesAreSelectable()

      Specified by:
        `allTablesAreSelectable` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.allTablesAreSelectable()`

    - #### autoCommitFailureClosesAllResultSets

          public boolean autoCommitFailureClosesAllResultSets()

      Specified by:
        `autoCommitFailureClosesAllResultSets` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.autoCommitFailureClosesAllResultSets()`

    - #### dataDefinitionCausesTransactionCommit

          public boolean dataDefinitionCausesTransactionCommit()

      Specified by:
        `dataDefinitionCausesTransactionCommit` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.dataDefinitionCausesTransactionCommit()`

    - #### dataDefinitionIgnoredInTransactions

          public boolean dataDefinitionIgnoredInTransactions()

      Specified by:
        `dataDefinitionIgnoredInTransactions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.dataDefinitionIgnoredInTransactions()`

    - #### deletesAreDetected

          public boolean deletesAreDetected(int type)

      Specified by:
        `deletesAreDetected` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.deletesAreDetected(int)`

    - #### doesMaxRowSizeIncludeBlobs

          public boolean doesMaxRowSizeIncludeBlobs()

      Specified by:
        `doesMaxRowSizeIncludeBlobs` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.doesMaxRowSizeIncludeBlobs()`

    - #### getAttributes

          public ResultSet getAttributes(String catalog,
                                String schemaPattern,
                                String typeNamePattern,
                                String attributeNamePattern)
                                  throws SQLException

      Specified by:
        `getAttributes` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getAttributes(java.lang.String, java.lang.String, java.lang.String, java.lang.String)`

    - #### getBestRowIdentifier

          public ResultSet getBestRowIdentifier(String catalog,
                                       String schema,
                                       String table,
                                       int scope,
                                       boolean nullable)
                                         throws SQLException

      Specified by:
        `getBestRowIdentifier` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getBestRowIdentifier(java.lang.String, java.lang.String, java.lang.String, int, boolean)`

    - #### getCatalogSeparator

          public String getCatalogSeparator()

      Specified by:
        `getCatalogSeparator` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getCatalogSeparator()`

    - #### getCatalogTerm

          public String getCatalogTerm()

      This driver maps the repository name as the JDBC catalog name. Therefore, this method returns 'Repository' for the catalog term.

      Specified by:
        `getCatalogTerm` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getCatalogTerm()`

    - #### getCatalogs

          public ResultSet getCatalogs()
                                throws SQLException

      This driver maps the repository name as the JDBC catalog name. Therefore, this method returns a result set containing only the repository's name.

      Specified by:
        `getCatalogs` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getCatalogs()`

    - #### getClientInfoProperties

          public ResultSet getClientInfoProperties()
                                            throws SQLException

      Specified by:
        `getClientInfoProperties` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getClientInfoProperties()`

    - #### getColumnPrivileges

          public ResultSet getColumnPrivileges(String catalog,
                                      String schema,
                                      String table,
                                      String columnNamePattern)
                                        throws SQLException

      Specified by:
        `getColumnPrivileges` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getColumnPrivileges(java.lang.String, java.lang.String, java.lang.String, java.lang.String)`

    - #### getColumns

          public ResultSet getColumns(String catalog,
                             String schemaPattern,
                             String tableNamePattern,
                             String columnNamePattern)
                               throws SQLException

      Specified by:
        `getColumns` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getColumns(java.lang.String, java.lang.String, java.lang.String, java.lang.String)`

    - #### getCrossReference

          public ResultSet getCrossReference(String parentCatalog,
                                    String parentSchema,
                                    String parentTable,
                                    String foreignCatalog,
                                    String foreignSchema,
                                    String foreignTable)
                                      throws SQLException

      Specified by:
        `getCrossReference` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getCrossReference(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)`

    - #### getDefaultTransactionIsolation

          public int getDefaultTransactionIsolation()

      Specified by:
        `getDefaultTransactionIsolation` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getDefaultTransactionIsolation()`

    - #### getExportedKeys

          public ResultSet getExportedKeys(String catalog,
                                  String schema,
                                  String table)
                                    throws SQLException

      This driver maps REFERENCE properties as keys, and therefore it represents as imported keys those REFERENCE properties on the type identified by the table name.

      Specified by:
        `getExportedKeys` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getExportedKeys(java.lang.String, java.lang.String, java.lang.String)`

    - #### getExtraNameCharacters

          public String getExtraNameCharacters()

      Specified by:
        `getExtraNameCharacters` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getExtraNameCharacters()`

    - #### getFunctionColumns

          public ResultSet getFunctionColumns(String catalog,
                                     String schemaPattern,
                                     String functionNamePattern,
                                     String columnNamePattern)
                                       throws SQLException

      Specified by:
        `getFunctionColumns` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getFunctionColumns(java.lang.String, java.lang.String, java.lang.String, java.lang.String)`

    - #### getFunctions

          public ResultSet getFunctions(String catalog,
                               String schemaPattern,
                               String functionNamePattern)
                                 throws SQLException

      Specified by:
        `getFunctions` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getFunctions(java.lang.String, java.lang.String, java.lang.String)`

    - #### getIdentifierQuoteString

          public String getIdentifierQuoteString()

      JCR-SQL2 allows identifiers to be surrounded by matching single quotes, double quotes, or opening and closing square brackets. Therefore, this method returns a single-quote character as the quote string.

      Specified by:
        `getIdentifierQuoteString` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getIdentifierQuoteString()`

    - #### getImportedKeys

          public ResultSet getImportedKeys(String catalog,
                                  String schema,
                                  String table)
                                    throws SQLException

      This driver maps REFERENCE properties as keys, and therefore it represents as imported keys those properties on other types referencing the type identified by the table name.

      Specified by:
        `getImportedKeys` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getImportedKeys(java.lang.String, java.lang.String, java.lang.String)`

    - #### getIndexInfo

          public ResultSet getIndexInfo(String catalog,
                               String schema,
                               String tableNamePattern,
                               boolean unique,
                               boolean approximate)
                                 throws SQLException

      Specified by:
        `getIndexInfo` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getIndexInfo(java.lang.String, java.lang.String, java.lang.String, boolean, boolean)`

    - #### getMaxBinaryLiteralLength

          public int getMaxBinaryLiteralLength()

      There is no maximum length of binary literals (or if there is a limit it is not known), so this method returns 0.

      Specified by:
        `getMaxBinaryLiteralLength` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxBinaryLiteralLength()`

    - #### getMaxCatalogNameLength

          public int getMaxCatalogNameLength()

      There is no maximum length of the catalog (repository) names - or the limit is not known.

      Specified by:
        `getMaxCatalogNameLength` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxCatalogNameLength()`

    - #### getMaxCharLiteralLength

          public int getMaxCharLiteralLength()

      There is no maximum length of character literals (or if there is a limit it is not known), so this method returns 0.

      Specified by:
        `getMaxCharLiteralLength` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxCharLiteralLength()`

    - #### getMaxColumnNameLength

          public int getMaxColumnNameLength()

      There is no maximum length of column names (or if there is a limit it is not known), so this method returns 0.

      Specified by:
        `getMaxColumnNameLength` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxColumnNameLength()`

    - #### getMaxColumnsInGroupBy

          public int getMaxColumnsInGroupBy()

      JCR-SQL2 does not support GROUP BY, so this method returns 0.

      Specified by:
        `getMaxColumnsInGroupBy` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxColumnsInGroupBy()`

    - #### getMaxColumnsInIndex

          public int getMaxColumnsInIndex()

      There is no limit to the number of columns in an index (or if there is a limit it is not known), so this method returns 0.

      Specified by:
        `getMaxColumnsInIndex` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxColumnsInIndex()`

    - #### getMaxColumnsInOrderBy

          public int getMaxColumnsInOrderBy()

      There is no limit to the number of columns in an ORDER BY statement (or if there is a limit it is not known), so this method returns 0.

      Specified by:
        `getMaxColumnsInOrderBy` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxColumnsInOrderBy()`

    - #### getMaxColumnsInSelect

          public int getMaxColumnsInSelect()

      There is no limit to the number of columns in a select statement (or if there is a limit it is not known), so this method returns 0.

      Specified by:
        `getMaxColumnsInSelect` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxColumnsInSelect()`

    - #### getMaxColumnsInTable

          public int getMaxColumnsInTable()

      There is no limit to the number of columns in a table (or if there is a limit it is not known), so this method returns 0.

      Specified by:
        `getMaxColumnsInTable` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxColumnsInTable()`

    - #### getMaxConnections

          public int getMaxConnections()

      There is no limit to the number of connections (or if there is a limit it is not known), so this method returns 0.

      Specified by:
        `getMaxConnections` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxConnections()`

    - #### getMaxCursorNameLength

          public int getMaxCursorNameLength()

      There are no cursors (or there is no limit), so this method returns 0.

      Specified by:
        `getMaxCursorNameLength` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxCursorNameLength()`

    - #### getMaxIndexLength

          public int getMaxIndexLength()

      There are no indexes (or there is no limit), so this method returns 0.

      Specified by:
        `getMaxIndexLength` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxIndexLength()`

    - #### getMaxProcedureNameLength

          public int getMaxProcedureNameLength()

      There are no procedures, so this method returns 0.

      Specified by:
        `getMaxProcedureNameLength` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxProcedureNameLength()`

    - #### getMaxRowSize

          public int getMaxRowSize()

      There is no maximum row size.

      Specified by:
        `getMaxRowSize` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxRowSize()`

    - #### getMaxSchemaNameLength

          public int getMaxSchemaNameLength()

      There is no maximum length of the schema (workspace) names - or the limit is not known.

      Specified by:
        `getMaxSchemaNameLength` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxSchemaNameLength()`

    - #### getMaxStatementLength

          public int getMaxStatementLength()

      Specified by:
        `getMaxStatementLength` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxStatementLength()`

    - #### getMaxStatements

          public int getMaxStatements()

      Specified by:
        `getMaxStatements` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxStatements()`

    - #### getMaxTableNameLength

          public int getMaxTableNameLength()

      Specified by:
        `getMaxTableNameLength` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxTableNameLength()`

    - #### getMaxTablesInSelect

          public int getMaxTablesInSelect()

      Specified by:
        `getMaxTablesInSelect` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxTablesInSelect()`

    - #### getMaxUserNameLength

          public int getMaxUserNameLength()

      Specified by:
        `getMaxUserNameLength` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getMaxUserNameLength()`

    - #### getNumericFunctions

          public String getNumericFunctions()

      Specified by:
        `getNumericFunctions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getNumericFunctions()`

    - #### getPrimaryKeys

          public ResultSet getPrimaryKeys(String catalog,
                                 String schema,
                                 String tableNamePattern)
                                   throws SQLException

      Specified by:
        `getPrimaryKeys` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getPrimaryKeys(java.lang.String, java.lang.String, java.lang.String)`

    - #### getProcedureColumns

          public ResultSet getProcedureColumns(String catalog,
                                      String schemaPattern,
                                      String procedureNamePattern,
                                      String columnNamePattern)
                                        throws SQLException

      Specified by:
        `getProcedureColumns` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getProcedureColumns(java.lang.String, java.lang.String, java.lang.String, java.lang.String)`

    - #### getProcedureTerm

          public String getProcedureTerm()

      Specified by:
        `getProcedureTerm` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getProcedureTerm()`

    - #### getProcedures

          public ResultSet getProcedures(String catalog,
                                String schemaPattern,
                                String procedureNamePattern)
                                  throws SQLException

      Specified by:
        `getProcedures` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getProcedures(java.lang.String, java.lang.String, java.lang.String)`

    - #### getResultSetHoldability

          public int getResultSetHoldability()

      Specified by:
        `getResultSetHoldability` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getResultSetHoldability()`

    - #### getRowIdLifetime

          public RowIdLifetime getRowIdLifetime()

      Specified by:
        `getRowIdLifetime` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getRowIdLifetime()`

    - #### getSQLKeywords

          public String getSQLKeywords()

      Specified by:
        `getSQLKeywords` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getSQLKeywords()`

    - #### getSQLStateType

          public int getSQLStateType()

      Specified by:
        `getSQLStateType` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getSQLStateType()`

    - #### getSchemaTerm

          public String getSchemaTerm()

      Specified by:
        `getSchemaTerm` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getSchemaTerm()`

    - #### getSchemas

          public ResultSet getSchemas()
                               throws SQLException

      Specified by:
        `getSchemas` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getSchemas()`

    - #### getSchemas

          public ResultSet getSchemas(String catalog,
                             String schemaPattern)
                               throws SQLException

      Specified by:
        `getSchemas` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getSchemas(java.lang.String, java.lang.String)`

    - #### getSearchStringEscape

          public String getSearchStringEscape()

      Specified by:
        `getSearchStringEscape` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getSearchStringEscape()`

    - #### getStringFunctions

          public String getStringFunctions()

      Specified by:
        `getStringFunctions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getStringFunctions()`

    - #### getSuperTables

          public ResultSet getSuperTables(String catalog,
                                 String schemaPattern,
                                 String tableNamePattern)
                                   throws SQLException

      Specified by:
        `getSuperTables` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getSuperTables(java.lang.String, java.lang.String, java.lang.String)`

    - #### getSuperTypes

          public ResultSet getSuperTypes(String catalog,
                                String schemaPattern,
                                String typeNamePattern)
                                  throws SQLException

      Specified by:
        `getSuperTypes` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getSuperTypes(java.lang.String, java.lang.String, java.lang.String)`

    - #### getSystemFunctions

          public String getSystemFunctions()

      Specified by:
        `getSystemFunctions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getSystemFunctions()`

    - #### getTablePrivileges

          public ResultSet getTablePrivileges(String catalog,
                                     String schemaPattern,
                                     String tableNamePattern)
                                       throws SQLException

      Specified by:
        `getTablePrivileges` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getTablePrivileges(java.lang.String, java.lang.String, java.lang.String)`

    - #### getTableTypes

          public ResultSet getTableTypes()
                                  throws SQLException

      Specified by:
        `getTableTypes` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getTableTypes()`

    - #### getTables

          public ResultSet getTables(String catalog,
                            String schemaPattern,
                            String tableNamePattern,
                            String[] types)
                              throws SQLException

      Specified by:
        `getTables` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getTables(java.lang.String, java.lang.String, java.lang.String, java.lang.String[])`

    - #### getTimeDateFunctions

          public String getTimeDateFunctions()

      Specified by:
        `getTimeDateFunctions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getTimeDateFunctions()`

    - #### getTypeInfo

          public ResultSet getTypeInfo()
                                throws SQLException

      Specified by:
        `getTypeInfo` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getTypeInfo()`

    - #### getUDTs

          public ResultSet getUDTs(String catalog,
                          String schemaPattern,
                          String typeNamePattern,
                          int[] types)
                            throws SQLException

      Specified by:
        `getUDTs` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getUDTs(java.lang.String, java.lang.String, java.lang.String, int[])`

    - #### getURL

          public String getURL()

      This method returns the effective URL of the connection, which includes all connection properties (even if those properties were passed in via the Properties argument). Note that each character in the password is replaced with a '*' character.

      Specified by:
        `getURL` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getURL()`

    - #### getUserName

          public String getUserName()

      Specified by:
        `getUserName` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.getUserName()`

    - #### getVersionColumns

          public ResultSet getVersionColumns(String catalog,
                                    String schema,
                                    String table)
                                      throws SQLException

      Specified by:
        `getVersionColumns` in interface `DatabaseMetaData`
      Throws:
        `SQLException`
      See Also:
        `DatabaseMetaData.getVersionColumns(java.lang.String, java.lang.String, java.lang.String)`

    - #### insertsAreDetected

          public boolean insertsAreDetected(int type)

      Specified by:
        `insertsAreDetected` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.insertsAreDetected(int)`

    - #### isCatalogAtStart

          public boolean isCatalogAtStart()

      Specified by:
        `isCatalogAtStart` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.isCatalogAtStart()`

    - #### locatorsUpdateCopy

          public boolean locatorsUpdateCopy()

      Specified by:
        `locatorsUpdateCopy` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.locatorsUpdateCopy()`

    - #### nullPlusNonNullIsNull

          public boolean nullPlusNonNullIsNull()

      Specified by:
        `nullPlusNonNullIsNull` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.nullPlusNonNullIsNull()`

    - #### nullsAreSortedAtEnd

          public boolean nullsAreSortedAtEnd()

      Assumed to be false for JCR implementations (meaning that sort order IS used), though section 6.7.37 of JCR 2.0 specification says ordering of null values is implementation-determined.

      Specified by:
        `nullsAreSortedAtEnd` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.nullsAreSortedAtEnd()`

    - #### nullsAreSortedAtStart

          public boolean nullsAreSortedAtStart()

      Assumed to be false for JCR implementations (meaning that sort order IS used), though section 6.7.37 of JCR 2.0 specification says ordering of null values is implementation-determined.

      Specified by:
        `nullsAreSortedAtStart` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.nullsAreSortedAtStart()`

    - #### nullsAreSortedHigh

          public boolean nullsAreSortedHigh()

      Assumed to be false for JCR implementations, though section 6.7.37 of JCR 2.0 specification says ordering of null values is implementation-determined.

      Specified by:
        `nullsAreSortedHigh` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.nullsAreSortedHigh()`

    - #### nullsAreSortedLow

          public boolean nullsAreSortedLow()

      Assumed to be true for JCR implementations, though section 6.7.37 of JCR 2.0 specification says ordering of null values is implementation-determined.

      Specified by:
        `nullsAreSortedLow` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.nullsAreSortedLow()`

    - #### othersDeletesAreVisible

          public boolean othersDeletesAreVisible(int type)

      Specified by:
        `othersDeletesAreVisible` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.othersDeletesAreVisible(int)`

    - #### othersInsertsAreVisible

          public boolean othersInsertsAreVisible(int type)

      Specified by:
        `othersInsertsAreVisible` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.othersInsertsAreVisible(int)`

    - #### othersUpdatesAreVisible

          public boolean othersUpdatesAreVisible(int type)

      Specified by:
        `othersUpdatesAreVisible` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.othersUpdatesAreVisible(int)`

    - #### ownDeletesAreVisible

          public boolean ownDeletesAreVisible(int type)

      Specified by:
        `ownDeletesAreVisible` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.ownDeletesAreVisible(int)`

    - #### ownInsertsAreVisible

          public boolean ownInsertsAreVisible(int type)

      Specified by:
        `ownInsertsAreVisible` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.ownInsertsAreVisible(int)`

    - #### ownUpdatesAreVisible

          public boolean ownUpdatesAreVisible(int type)

      Specified by:
        `ownUpdatesAreVisible` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.ownUpdatesAreVisible(int)`

    - #### storesLowerCaseIdentifiers

          public boolean storesLowerCaseIdentifiers()

      Specified by:
        `storesLowerCaseIdentifiers` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.storesLowerCaseIdentifiers()`

    - #### storesLowerCaseQuotedIdentifiers

          public boolean storesLowerCaseQuotedIdentifiers()

      Specified by:
        `storesLowerCaseQuotedIdentifiers` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.storesLowerCaseQuotedIdentifiers()`

    - #### storesMixedCaseIdentifiers

          public boolean storesMixedCaseIdentifiers()

      Specified by:
        `storesMixedCaseIdentifiers` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.storesMixedCaseIdentifiers()`

    - #### storesMixedCaseQuotedIdentifiers

          public boolean storesMixedCaseQuotedIdentifiers()

      Specified by:
        `storesMixedCaseQuotedIdentifiers` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.storesMixedCaseQuotedIdentifiers()`

    - #### storesUpperCaseIdentifiers

          public boolean storesUpperCaseIdentifiers()

      Specified by:
        `storesUpperCaseIdentifiers` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.storesUpperCaseIdentifiers()`

    - #### storesUpperCaseQuotedIdentifiers

          public boolean storesUpperCaseQuotedIdentifiers()

      Specified by:
        `storesUpperCaseQuotedIdentifiers` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.storesUpperCaseQuotedIdentifiers()`

    - #### supportsANSI92EntryLevelSQL

          public boolean supportsANSI92EntryLevelSQL()

      Specified by:
        `supportsANSI92EntryLevelSQL` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsANSI92EntryLevelSQL()`

    - #### supportsANSI92FullSQL

          public boolean supportsANSI92FullSQL()

      Specified by:
        `supportsANSI92FullSQL` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsANSI92FullSQL()`

    - #### supportsANSI92IntermediateSQL

          public boolean supportsANSI92IntermediateSQL()

      Specified by:
        `supportsANSI92IntermediateSQL` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsANSI92IntermediateSQL()`

    - #### supportsAlterTableWithAddColumn

          public boolean supportsAlterTableWithAddColumn()

      Specified by:
        `supportsAlterTableWithAddColumn` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsAlterTableWithAddColumn()`

    - #### supportsAlterTableWithDropColumn

          public boolean supportsAlterTableWithDropColumn()

      Specified by:
        `supportsAlterTableWithDropColumn` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsAlterTableWithDropColumn()`

    - #### supportsBatchUpdates

          public boolean supportsBatchUpdates()

      Specified by:
        `supportsBatchUpdates` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsBatchUpdates()`

    - #### supportsCatalogsInDataManipulation

          public boolean supportsCatalogsInDataManipulation()

      Specified by:
        `supportsCatalogsInDataManipulation` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsCatalogsInDataManipulation()`

    - #### supportsCatalogsInIndexDefinitions

          public boolean supportsCatalogsInIndexDefinitions()

      Specified by:
        `supportsCatalogsInIndexDefinitions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsCatalogsInIndexDefinitions()`

    - #### supportsCatalogsInPrivilegeDefinitions

          public boolean supportsCatalogsInPrivilegeDefinitions()

      Specified by:
        `supportsCatalogsInPrivilegeDefinitions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsCatalogsInPrivilegeDefinitions()`

    - #### supportsCatalogsInProcedureCalls

          public boolean supportsCatalogsInProcedureCalls()

      Specified by:
        `supportsCatalogsInProcedureCalls` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsCatalogsInProcedureCalls()`

    - #### supportsCatalogsInTableDefinitions

          public boolean supportsCatalogsInTableDefinitions()

      Specified by:
        `supportsCatalogsInTableDefinitions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsCatalogsInTableDefinitions()`

    - #### supportsColumnAliasing

          public boolean supportsColumnAliasing()

      Specified by:
        `supportsColumnAliasing` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsColumnAliasing()`

    - #### supportsConvert

          public boolean supportsConvert()

      Specified by:
        `supportsConvert` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsConvert()`

    - #### supportsConvert

          public boolean supportsConvert(int fromType,
                                int toType)

      Specified by:
        `supportsConvert` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsConvert(int, int)`

    - #### supportsCoreSQLGrammar

          public boolean supportsCoreSQLGrammar()

      Specified by:
        `supportsCoreSQLGrammar` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsCoreSQLGrammar()`

    - #### supportsCorrelatedSubqueries

          public boolean supportsCorrelatedSubqueries()

      Specified by:
        `supportsCorrelatedSubqueries` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsCorrelatedSubqueries()`

    - #### supportsDataDefinitionAndDataManipulationTransactions

          public boolean supportsDataDefinitionAndDataManipulationTransactions()

      Specified by:
        `supportsDataDefinitionAndDataManipulationTransactions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsDataDefinitionAndDataManipulationTransactions()`

    - #### supportsDataManipulationTransactionsOnly

          public boolean supportsDataManipulationTransactionsOnly()

      Specified by:
        `supportsDataManipulationTransactionsOnly` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsDataManipulationTransactionsOnly()`

    - #### supportsDifferentTableCorrelationNames

          public boolean supportsDifferentTableCorrelationNames()

      Specified by:
        `supportsDifferentTableCorrelationNames` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsDifferentTableCorrelationNames()`

    - #### supportsExpressionsInOrderBy

          public boolean supportsExpressionsInOrderBy()

      Specified by:
        `supportsExpressionsInOrderBy` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsExpressionsInOrderBy()`

    - #### supportsExtendedSQLGrammar

          public boolean supportsExtendedSQLGrammar()

      Specified by:
        `supportsExtendedSQLGrammar` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsExtendedSQLGrammar()`

    - #### supportsFullOuterJoins

          public boolean supportsFullOuterJoins()

      Specified by:
        `supportsFullOuterJoins` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsFullOuterJoins()`

    - #### supportsGetGeneratedKeys

          public boolean supportsGetGeneratedKeys()

      Specified by:
        `supportsGetGeneratedKeys` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsGetGeneratedKeys()`

    - #### supportsGroupBy

          public boolean supportsGroupBy()

      Specified by:
        `supportsGroupBy` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsGroupBy()`

    - #### supportsGroupByBeyondSelect

          public boolean supportsGroupByBeyondSelect()

      Specified by:
        `supportsGroupByBeyondSelect` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsGroupByBeyondSelect()`

    - #### supportsGroupByUnrelated

          public boolean supportsGroupByUnrelated()

      Specified by:
        `supportsGroupByUnrelated` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsGroupByUnrelated()`

    - #### supportsIntegrityEnhancementFacility

          public boolean supportsIntegrityEnhancementFacility()

      Specified by:
        `supportsIntegrityEnhancementFacility` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsIntegrityEnhancementFacility()`

    - #### supportsLikeEscapeClause

          public boolean supportsLikeEscapeClause()

      Specified by:
        `supportsLikeEscapeClause` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsLikeEscapeClause()`

    - #### supportsLimitedOuterJoins

          public boolean supportsLimitedOuterJoins()

      Specified by:
        `supportsLimitedOuterJoins` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsLimitedOuterJoins()`

    - #### supportsMinimumSQLGrammar

          public boolean supportsMinimumSQLGrammar()

      Specified by:
        `supportsMinimumSQLGrammar` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsMinimumSQLGrammar()`

    - #### supportsMixedCaseIdentifiers

          public boolean supportsMixedCaseIdentifiers()

      Specified by:
        `supportsMixedCaseIdentifiers` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsMixedCaseIdentifiers()`

    - #### supportsMixedCaseQuotedIdentifiers

          public boolean supportsMixedCaseQuotedIdentifiers()

      Specified by:
        `supportsMixedCaseQuotedIdentifiers` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsMixedCaseQuotedIdentifiers()`

    - #### supportsMultipleOpenResults

          public boolean supportsMultipleOpenResults()

      Specified by:
        `supportsMultipleOpenResults` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsMultipleOpenResults()`

    - #### supportsMultipleResultSets

          public boolean supportsMultipleResultSets()

      Specified by:
        `supportsMultipleResultSets` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsMultipleResultSets()`

    - #### supportsMultipleTransactions

          public boolean supportsMultipleTransactions()

      Specified by:
        `supportsMultipleTransactions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsMultipleTransactions()`

    - #### supportsNamedParameters

          public boolean supportsNamedParameters()

      Specified by:
        `supportsNamedParameters` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsNamedParameters()`

    - #### supportsNonNullableColumns

          public boolean supportsNonNullableColumns()

      Specified by:
        `supportsNonNullableColumns` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsNonNullableColumns()`

    - #### supportsOpenCursorsAcrossCommit

          public boolean supportsOpenCursorsAcrossCommit()

      Specified by:
        `supportsOpenCursorsAcrossCommit` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsOpenCursorsAcrossCommit()`

    - #### supportsOpenCursorsAcrossRollback

          public boolean supportsOpenCursorsAcrossRollback()

      Specified by:
        `supportsOpenCursorsAcrossRollback` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsOpenCursorsAcrossRollback()`

    - #### supportsOpenStatementsAcrossCommit

          public boolean supportsOpenStatementsAcrossCommit()

      Specified by:
        `supportsOpenStatementsAcrossCommit` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsOpenStatementsAcrossCommit()`

    - #### supportsOpenStatementsAcrossRollback

          public boolean supportsOpenStatementsAcrossRollback()

      Specified by:
        `supportsOpenStatementsAcrossRollback` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsOpenStatementsAcrossRollback()`

    - #### supportsOrderByUnrelated

          public boolean supportsOrderByUnrelated()

      Specified by:
        `supportsOrderByUnrelated` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsOrderByUnrelated()`

    - #### supportsOuterJoins

          public boolean supportsOuterJoins()

      Specified by:
        `supportsOuterJoins` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsOuterJoins()`

    - #### supportsPositionedDelete

          public boolean supportsPositionedDelete()

      Specified by:
        `supportsPositionedDelete` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsPositionedDelete()`

    - #### supportsPositionedUpdate

          public boolean supportsPositionedUpdate()

      Specified by:
        `supportsPositionedUpdate` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsPositionedUpdate()`

    - #### supportsResultSetConcurrency

          public boolean supportsResultSetConcurrency(int type,
                                             int concurrency)

      Specified by:
        `supportsResultSetConcurrency` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsResultSetConcurrency(int, int)`

    - #### supportsResultSetHoldability

          public boolean supportsResultSetHoldability(int holdability)

      Specified by:
        `supportsResultSetHoldability` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsResultSetHoldability(int)`

    - #### supportsResultSetType

          public boolean supportsResultSetType(int type)

      Specified by:
        `supportsResultSetType` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsResultSetType(int)`

    - #### supportsSavepoints

          public boolean supportsSavepoints()

      Specified by:
        `supportsSavepoints` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsSavepoints()`

    - #### supportsSchemasInDataManipulation

          public boolean supportsSchemasInDataManipulation()

      Specified by:
        `supportsSchemasInDataManipulation` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsSchemasInDataManipulation()`

    - #### supportsSchemasInIndexDefinitions

          public boolean supportsSchemasInIndexDefinitions()

      Specified by:
        `supportsSchemasInIndexDefinitions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsSchemasInIndexDefinitions()`

    - #### supportsSchemasInPrivilegeDefinitions

          public boolean supportsSchemasInPrivilegeDefinitions()

      Specified by:
        `supportsSchemasInPrivilegeDefinitions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsSchemasInPrivilegeDefinitions()`

    - #### supportsSchemasInProcedureCalls

          public boolean supportsSchemasInProcedureCalls()

      Specified by:
        `supportsSchemasInProcedureCalls` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsSchemasInProcedureCalls()`

    - #### supportsSchemasInTableDefinitions

          public boolean supportsSchemasInTableDefinitions()

      Specified by:
        `supportsSchemasInTableDefinitions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsSchemasInTableDefinitions()`

    - #### supportsSelectForUpdate

          public boolean supportsSelectForUpdate()

      Specified by:
        `supportsSelectForUpdate` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsSelectForUpdate()`

    - #### supportsStatementPooling

          public boolean supportsStatementPooling()

      Specified by:
        `supportsStatementPooling` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsStatementPooling()`

    - #### supportsStoredFunctionsUsingCallSyntax

          public boolean supportsStoredFunctionsUsingCallSyntax()

      Specified by:
        `supportsStoredFunctionsUsingCallSyntax` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsStoredFunctionsUsingCallSyntax()`

    - #### supportsStoredProcedures

          public boolean supportsStoredProcedures()

      Specified by:
        `supportsStoredProcedures` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsStoredProcedures()`

    - #### supportsSubqueriesInComparisons

          public boolean supportsSubqueriesInComparisons()

      Specified by:
        `supportsSubqueriesInComparisons` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsSubqueriesInComparisons()`

    - #### supportsSubqueriesInExists

          public boolean supportsSubqueriesInExists()

      Specified by:
        `supportsSubqueriesInExists` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsSubqueriesInExists()`

    - #### supportsSubqueriesInIns

          public boolean supportsSubqueriesInIns()

      Specified by:
        `supportsSubqueriesInIns` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsSubqueriesInIns()`

    - #### supportsSubqueriesInQuantifieds

          public boolean supportsSubqueriesInQuantifieds()

      Specified by:
        `supportsSubqueriesInQuantifieds` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsSubqueriesInQuantifieds()`

    - #### supportsTableCorrelationNames

          public boolean supportsTableCorrelationNames()

      Specified by:
        `supportsTableCorrelationNames` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsTableCorrelationNames()`

    - #### supportsTransactionIsolationLevel

          public boolean supportsTransactionIsolationLevel(int level)

      Specified by:
        `supportsTransactionIsolationLevel` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsTransactionIsolationLevel(int)`

    - #### supportsTransactions

          public boolean supportsTransactions()

      Specified by:
        `supportsTransactions` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsTransactions()`

    - #### supportsUnion

          public boolean supportsUnion()

      Specified by:
        `supportsUnion` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsUnion()`

    - #### supportsUnionAll

          public boolean supportsUnionAll()

      Specified by:
        `supportsUnionAll` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.supportsUnionAll()`

    - #### updatesAreDetected

          public boolean updatesAreDetected(int type)

      Specified by:
        `updatesAreDetected` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.updatesAreDetected(int)`

    - #### usesLocalFilePerTable

          public boolean usesLocalFilePerTable()

      Specified by:
        `usesLocalFilePerTable` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.usesLocalFilePerTable()`

    - #### usesLocalFiles

          public boolean usesLocalFiles()

      Specified by:
        `usesLocalFiles` in interface `DatabaseMetaData`
      See Also:
        `DatabaseMetaData.usesLocalFiles()`

    - #### isWrapperFor

          public boolean isWrapperFor(Class<?> iface)

      Specified by:
        `isWrapperFor` in interface `Wrapper`
      See Also:
        `Wrapper.isWrapperFor(java.lang.Class)`

    - #### unwrap

          public <T> T unwrap(Class<T> iface)
                   throws SQLException

      Specified by:
        `unwrap` in interface `Wrapper`
      Throws:
        `SQLException`
      See Also:
        `Wrapper.unwrap(java.lang.Class)`

Copyright © 2008-2014 JBoss, a division of Red Hat. All Rights Reserved.