sp_column_privileges_ex (Transact-SQL)

适用范围:SQL Server

返回指定链接服务器上的指定表的列特权。

Transact-SQL 语法约定

语法

sp_column_privileges_ex
    [ @table_server = ] N'table_server'
    [ , [ @table_name = ] N'table_name' ]
    [ , [ @table_schema = ] N'table_schema' ]
    [ , [ @table_catalog = ] N'table_catalog' ]
    [ , [ @column_name = ] N'column_name' ]
[ ; ]

参数

[ @table_server = ] N'table_server'

要为其返回信息的链接服务器的名称。 @table_server为 sysname,没有默认值。

[ @table_name = ] N'table_name'

包含指定列的表的名称。 @table_name为 sysname,默认值为 NULL.

[ @table_schema = ] N'table_schema'

表架构。 @table_schema为 sysname,默认值为 NULL.

[ @table_catalog = ] N'table_catalog'

指定 @table_name 所在的数据库的名称。 @table_catalog为 sysname,默认值为 NULL.

[ @column_name = ] N'column_name'

要为其提供特权信息的列的名称。 @column_name是 sysname,默认值为NULL(所有常见)。

结果集

下表显示结果集列。 返回的结果按 TABLE_QUALIFIER、、 COLUMN_NAMETABLE_OWNERTABLE_NAME和 。PRIVILEGE

列名称 数据类型 描述
TABLE_CAT sysname 表限定符名称。 各种 DBMS 产品支持表的三部分命名(<qualifier>.<owner>.<name>)。 在 SQL Server 中,此列表示数据库名称。 在某些产品中,该列表示表所在的数据库环境的服务器名。 此字段可以是 NULL.
TABLE_SCHEM sysname 表所有者名称。 在 SQL Server 中,此列表示创建该表的数据库用户的名称。 此字段始终返回值。
TABLE_NAME sysname 表名。 此字段始终返回值。
COLUMN_NAME sysname 列名称,针对返回的每个 TABLE_NAME 列。 此字段始终返回值。
GRANTOR sysname 已为此授予对 COLUMN_NAME 列出的 GRANTEE权限的数据库用户名。 在 SQL Server 中,此列始终与 TABLE_OWNER. 此字段始终返回值。

GRANTOR 列可以是数据库所有者(TABLE_OWNER)或数据库所有者通过使用 WITH GRANT OPTION 语句中的 GRANT 子句授予权限的人员。
GRANTEE sysname 列出的GRANTOR授予对此COLUMN_NAME权限的数据库用户名。 此字段始终返回值。
PRIVILEGE varchar(32) 可用列权限中的一个。 列权限可以是下列值中的一个(或定义实现时数据源支持的其他值):

SELECT = GRANTEE 可以检索列的数据。
INSERT = GRANTEE 当新行插入到表中时, GRANTEE可以为此列提供数据。
UPDATE = GRANTEE 可以修改列中的现有数据。
REFERENCES = GRANTEE 可以在主键/外键关系中引用外表中的列。 主键/外键关系是使用表约束定义的。
IS_GRANTABLE varchar(3) 指示是否 GRANTEE 允许向其他用户授予权限(通常称为“授予授予”权限)。 可以是 YES、NO 或 NULL。 未知值或 NULL值是指“授予授权”不适用的数据源。

权限

需要对架构的 SELECT 权限。

示例

以下示例返回 HumanResources.Department 链接服务器上 AdventureWorks2022 数据库中 Seattle1 表的列特权信息。

EXEC sp_column_privileges_ex
    @table_server = 'Seattle1',
    @table_name = 'Department',
    @table_schema = 'HumanResources',
    @table_catalog = 'AdventureWorks2022';