检索可用于给定目录、架构或表名称模式的各表的说明。

语法

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

参数

catalog

包含目录名称的 String。对此参数提供 Null 值指示无需使用目录名称。

schema

包含架构名称模式的 String 值。对此参数提供 Null 值指示无需使用架构名称。

tableName

包含表名称模式的 String

types

含有要包含的表类型的字符串数组。Null 指示应包含所有表类型。

返回值

异常

注释

getTables 方法由 java.sql.DatabaseMetaData 接口中的 getTables 方法指定。

getTables 方法返回的结果集将包含下列信息:

名称

类型

说明

TABLE_CAT

String

指定的表所在的数据库的名称。

TABLE_SCHEM

String

表架构的名称。

TABLE_NAME

String

表的名称。

TABLE_TYPE

String

表类型。

REMARKS

String

表的说明。

SQL Server 不为此列返回值。

TYPE_CAT

String

JDBC 驱动程序不支持此类型。

TYPE_SCHEM

String

JDBC 驱动程序不支持此类型。

TYPE_NAME

String

JDBC 驱动程序不支持此类型。

SELF_REFERENCING_COL_NAME

String

JDBC 驱动程序不支持此类型。

REF_GENERATION

String

JDBC 驱动程序不支持此类型。

有关 getTables 方法返回的数据的详细信息,请参阅 SQL Server 联机丛书中的“sp_tables (Transact-SQL)”。

示例

下例演示了如何使用 getTables 方法返回 SQL Server 2005AdventureWorks 示例数据库中的 Person.Contact 表的表说明信息。

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();
   }
}

请参阅