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

语法

public java.sql.ResultSet getTablePrivileges(java.lang.String catalog,
java.lang.String schema,
java.lang.String table)

参数

catalog

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

schema

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

table

包含表名称模式的 String

返回值

SQLServerResultSet 对象。

异常

SQLServerException

备注

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

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

名称 类型 说明

TABLE_CAT

String

目录名称。

TABLE_SCHEM

String

表架构的名称。

TABLE_NAME

String

表的名称。

GRANTOR

String

授予访问权限的对象。

GRANTEE

String

获得访问权限的对象。

PRIVILEGE

String

授予的访问权限的类型。

IS_GRANTABLE

String

指示是否允许被授权者向其他用户授予权限。

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

示例

下列示例演示了如何使用 getTablePrivileges 方法返回 SQL Server 2005 AdventureWorks 示例数据库中 Person.Contact 表的访问权限。

public static void executeGetTablePrivileges(Connection con) {
   try {
      DatabaseMetaData dbmd = con.getMetaData();
      ResultSet rs = dbmd.getTablePrivileges("AdventureWorks", "Person", "Contact");
      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();
   }
}

请参阅

SQLServerDatabaseMetaData 类
SQLServerDatabaseMetaData 方法
SQLServerDatabaseMetaData 成员