Partilhar via


sp_column_privileges_ex (Transact-SQL)

Aplica-se a:SQL Server

Devolve privilégios de coluna para a tabela especificada no servidor ligado especificado.

Transact-SQL convenções de sintaxe

Sintaxe

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' ]
[ ; ]

Arguments

[ @table_server = ] N'table_server'

O nome do servidor ligado para o qual devolver a informação. @table_server é sysname, sem padrão.

[ @table_name = ] N'table_name'

O nome da tabela que contém a coluna especificada. @table_name é sysname, com um padrão de NULL.

[ @table_schema = ] N'table_schema'

O esquema da tabela. @table_schema é sysname, com o padrão de NULL.

[ @table_catalog = ] N'table_catalog'

O nome da base de dados onde reside o @table_name especificado. @table_catalog é sysname, com um padrão de NULL.

[ @column_name = ] N'column_name'

O nome da coluna para a qual fornecer informação de privilégio. @column_name é sysname, com um padrão de NULL (todos comum).

Conjunto de resultados

A tabela seguinte mostra as colunas do conjunto de resultados. Os resultados devolvidos são ordenados por TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, COLUMN_NAME, e PRIVILEGE.

Nome da coluna Tipo de dados Description
TABLE_CAT sysname Nome do qualificador da tabela. Vários produtos SGBD suportam a nomenclatura em três partes para tabelas (<qualifier>.<owner>.<name>). No SQL Server, esta coluna representa o nome da base de dados. Em alguns produtos, representa o nome do servidor do ambiente de base de dados da tabela. Este campo pode ser NULL.
TABLE_SCHEM sysname Nome do dono da mesa. No SQL Server, esta coluna representa o nome do utilizador da base de dados que criou a tabela. Este campo devolve sempre um valor.
TABLE_NAME sysname Nome da tabela. Este campo devolve sempre um valor.
COLUMN_NAME sysname Nome da coluna, para cada coluna do TABLE_NAME devolvido. Este campo devolve sempre um valor.
GRANTOR sysname Nome de utilizador da base de dados que recebeu permissões sobre isto COLUMN_NAME para a lista GRANTEE. No SQL Server, esta coluna é sempre a mesma que o TABLE_OWNER. Este campo devolve sempre um valor.

A GRANTOR coluna pode ser o proprietário da base de dados (TABLE_OWNER) ou alguém a quem o proprietário da base de dados concedeu permissões ao usar a WITH GRANT OPTION cláusula na GRANT instrução.
GRANTEE sysname Nome de utilizador da base de dados que recebeu permissões sobre isto COLUMN_NAME pelo nome listado GRANTOR. Este campo devolve sempre um valor.
PRIVILEGE varchar(32) Uma das permissões de coluna disponíveis. As permissões de coluna podem ser um dos seguintes valores (ou outros valores suportados pela fonte de dados quando a implementação é definida):

SELECT = GRANTEE pode recuperar dados para as colunas.
INSERT = GRANTEE pode fornecer dados para esta coluna quando novas linhas são inseridas (pelo GRANTEE) na tabela.
UPDATE = GRANTEE pode modificar dados existentes na coluna.
REFERENCES = GRANTEE pode referenciar uma coluna numa tabela estrangeira numa relação chave primária/chave estrangeira. As relações chave primária/chave estrangeira são definidas com restrições de tabela.
IS_GRANTABLE Varchar(3) Indica se é GRANTEE permitido conceder permissões a outros utilizadores (frequentemente referido como "conceder com autorização"). Pode ser SIM, NÃO ou NULL. Um valor desconhecido, ou NULL, refere-se a uma fonte de dados onde "grant with grant" não é aplicável.

Permissions

Requer SELECT permissão no esquema.

Examples

O exemplo seguinte devolve informação de privilégio de coluna para a HumanResources.Department tabela na AdventureWorks2025 base de dados no Seattle1 servidor ligado.

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