sp_column_privileges_ex (Transact-SQL)
返回指定链接服务器上指定表的列特权。
语法
sp_column_privileges_ex [ @table_server = ] 'table_server'
[ , [ @table_name = ] 'table_name' ]
[ , [ @table_schema = ] 'table_schema' ]
[ , [ @table_catalog = ] 'table_catalog' ]
[ , [ @column_name = ] 'column_name' ]
参数
[ @table_server = ] 'table_server'
要返回其信息的链接服务器的名称。table_server 的数据类型为 sysname,无默认值。
[ @table_name = ] 'table_name'
包含指定列的表的名称。table_name 的数据类型为 sysname,默认值为 NULL。
[ @table_schema = ] 'table_schema'
表架构。table_schema 的数据类型为 sysname,默认值为 NULL。
[ @table_catalog = ] 'table_catalog'
指定的 table_name 所在数据库的名称。table_catalog 的数据类型为 sysname,默认值为 NULL。
[ @column_name =] 'column_name'
为其提供特权信息的列的名称。column_name 的数据类型为 sysname,默认值为 NULL(对任何列均相同)。
结果集
下表显示结果集列。返回的结果按 TABLE_QUALIFIER、TABLE_OWNER、TABLE_NAME、COLUMN_NAME 和 PRIVILEGE 排序。
列名 | 数据类型 | 说明 |
---|---|---|
TABLE_CAT |
sysname |
表限定符名称。许多 DBMS 产品都支持表的三部分构成命名方式 (qualifier.owner.name)。在 SQL Server 2005 中,此列表示数据库名称。在某些产品中,该列表示表所在数据库环境的服务器名。该字段可以为 NULL。 |
TABLE_SCHEM |
sysname |
表所有者名称。在 SQL Server 中,此列表示创建该表的数据库用户的名称。该字段始终返回值。 |
TABLE_NAME |
sysname |
表名。该字段始终返回值。 |
COLUMN_NAME |
sysname |
为 TABLE_NAME 返回的每个列的列名。该字段始终返回值。 |
GRANTOR |
sysname |
向所列的 GRANTEE 授予对此 COLUMN_NAME 的权限的数据库用户名。在 SQL Server 中,此列始终与 TABLE_OWNER 相同。该字段始终返回值。 GRANTOR 列可以是数据库所有者 (TABLE_OWNER) 或数据库所有者通过 GRANT 语句中的 WITH GRANT OPTION 子句对其授予权限的用户。 |
GRANTEE |
sysname |
由所列 GRANTOR 授予对此 COLUMN_NAME 的权限的数据库用户名。该字段始终返回值。 |
PRIVILEGE |
varchar(32) |
可用列权限中的一个。列权限可以是下列值中的一个(或定义实现时数据源支持的其他值): SELECT = GRANTEE 可以检索列的数据。 INSERT = (GRANTEE) 向表中插入新行时,GRANTEE 可以为该列提供数据。 UPDATE = GRANTEE 可以修改列中的现有数据。 REFERENCES = GRANTEE 可以引用主键/外键关系中外表中的列。主键/外键关系是使用表约束定义的。 |
IS_GRANTABLE |
varchar(3) |
指示是否允许 GRANTEE 向其他用户授予权限,经常称为“授予再授予”(grant with grant) 权限。可以是 YES、NO 或 NULL。未知值或 NULL 值表示不能使用“授予再授予”(grant with grant) 的数据源。 |
权限
需要对架构的 SELECT 权限。
示例
以下示例返回 Seattle1
链接服务器上 AdventureWorks
数据库中 HumanResources.Department
表的列特权信息。
EXEC sp_column_privileges_ex @table_server = 'Seattle1',
@table_name = 'Department',
@table_schema = 'HumanResources',
@table_catalog ='AdventureWorks'
请参阅
参考
sp_table_privileges_ex (Transact-SQL)
系统存储过程 (Transact-SQL)