检索在连接的服务器中可用的目录名称。

语法

public java.sql.ResultSet getCatalogs()

返回值

异常

注释

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

在 SQL Azure 上,您应连接到主数据库以调用 SQLServerDatabaseMetaData.getCatalogs。SQL Azure 不支持从用户数据库中返回整个目录集。SQLServerDatabaseMetaData.getCatalogs 使用 sys.databases 视图获取目录。请参考 sys.databases(SQL Azure 数据库)中讨论的权限来了解 SQL Azure 上的 SQLServerDatabaseMetaData.getCatalogs 行为。

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

名称

类型

说明

TABLE_CAT

String

目录名称,包括 Microsoft SQL Server 中的系统数据库。

示例

下例演示了如何使用 getCatalogs 方法返回 Microsoft SQL Server 中包含的所有数据库(包括系统数据库)的名称。

public static void executeGetCatalogs(Connection con) {
   try {
      DatabaseMetaData dbmd = con.getMetaData();
      ResultSet rs = dbmd.getCatalogs();
      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();
   }
}

请参阅