getTablePrivileges 方法 (SQLServerDatabaseMetaData)

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

# 语法

    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 2005AdventureWorks 示例数据库中 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 成员
发送有关本主题的反馈至 Microsoft。

© 2012 Microsoft。保留所有权利。