Retrieves a description of the tables that are available in the given catalog, schema, or table name pattern.

public java.sql.ResultSet getTables(java.lang.String catalog,
                                    java.lang.String schema,
                                    java.lang.String table,
                                    java.lang.String[] types)

Parameters

catalog

A string that contains the catalog name. Providing a null to this parameter indicates that the catalog name does not need to be used.

schema

A string that contains the schema name pattern. Providing a null to this parameter indicates that the schema name does not need to be used.

tableName

A string that contains the table name pattern.

types

An array of strings that contain the types of tables to include. Null indicates that all types of tables should be included.

Return Value

A SQLServerResultSet object.

Exceptions

SQLServerException

Remarks

This getTables method is specified by the getTables method in the java.sql.DatabaseMetaData interface.

The result set returned by the getTables method will contain the following information:

Name Type Description

TABLE_CAT

string

The name of the database in which the specified table resides.

TABLE_SCHEM

string

The table schema name.

TABLE_NAME

string

The table name.

TABLE_TYPE

string

The table type.

REMARKS

string

The description of the table.

Note: SQL Server does not return a value for this column.

TYPE_CAT

string

Not supported by the JDBC driver.

TYPE_SCHEM

string

Not supported by the JDBC driver.

TYPE_NAME

string

Not supported by the JDBC driver.

SELF_REFERENCING_COL_NAME

string

Not supported by the JDBC driver.

REF_GENERATION

string

Not supported by the JDBC driver.

Note: For more information about the data returned by the getTables method, see "sp_tables (Transact-SQL)" in SQL Server Books Online.

Example

The following example demonstrates how to use the getTables method to return the table description information for the Person.Contact table in the SQL Server 2005 AdventureWorks sample database.

public static void executeGetTables(Connection con) {
   try {
      DatabaseMetaData dbmd = con.getMetaData();
      ResultSet rs = dbmd.getTables("AdventureWorks", "Person", "Contact", null);
      ResultSetMetaData rsmd = rs.getMetaData();

      // Display the result set data.
      int cols = rsmd.getColumnCount();
      while(rs.next()) {
         for (int i = 1; i <= cols; i++) {
            System.out.println(rs.getString(i));
         }
      }
      rs.close();
   } 

   catch (Exception e) {
      e.printStackTrace();
   }
}

See Also