Compartilhar via


sp_column_privileges_ex (Transact-SQL)

Retorna os privilégios de coluna para a tabela especificada no servidor vinculado especificado.

Ícone de vínculo de tópico Convenções da sintaxe Transact-SQL

Sintaxe

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

Argumentos

  • [ @table_server = ] 'table_server'
    É o nome do servidor vinculado para o qual as informações devem ser retornadas. table_server é sysname, sem padrão.

  • [ @table_name = ] 'table_name'
    É o nome da tabela que contém a coluna especificada. table_name é sysname, com um padrão de NULL.

  • [ @table_schema = ] 'table_schema'
    É o esquema de tabela. table_schema é sysname, com um padrão de NULL.

  • [ @table_catalog = ] 'table_catalog'
    É o nome do banco de dados no qual o table_name especificado reside. table_catalog é sysname, com um padrão de NULL.

  • [ @column_name = ] 'column_name'
    É o nome da coluna para a qual fornecer informações de privilégio. column_name é sysname, com um padrão de NULL (tudo comum).

Conjuntos de resultados

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

Nome da coluna

Tipo de dados

Descrição

TABLE_CAT

sysname

Nome do qualificador de tabela. Vários produtos DBMS dão suporte à nomenclatura de três partes de tabelas (qualifier.owner.name). No SQL Server, esta coluna representa o nome do banco de dados. Em alguns produtos, representa o nome do servidor do ambiente de banco de dados da tabela. Este campo pode ser NULL.

TABLE_SCHEM

sysname

Nome do proprietário da tabela. No SQL Server, esta coluna representa o nome do usuário de banco de dados que criou a tabela. Este campo sempre retorna um valor.

TABLE_NAME

sysname

Nome da tabela. Este campo sempre retorna um valor.

COLUMN_NAME

sysname

Nome de cada coluna do TABLE_NAME retornado. Este campo sempre retorna um valor.

GRANTOR

sysname

Nome de usuário do banco de dados que concedeu permissões neste COLUMN_NAME para o GRANTEElistado. No SQL Server, esta coluna é sempre igual a TABLE_OWNER. Este campo sempre retorna um valor.

A coluna GRANTOR pode ser o proprietário do banco de dados (TABLE_OWNER) ou alguém para quem o proprietário do banco de dados concedeu permissões com o uso da cláusula WITH GRANT OPTION na instrução GRANT.

GRANTEE

sysname

O nome de usuário do banco de dados ao qual as permissões neste COLUMN_NAME foram concedidas pelo GRANTOR listado. Este campo sempre retorna um valor.

PRIVILEGE

varchar(32)

Uma das permissões de coluna disponíveis. As permissões de coluna podem ter um dos seguintes valores (ou outros valores que tenham suporte na 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 os dados existentes na coluna.

REFERENCES = GRANTEE pode referenciar uma coluna em uma tabela estrangeira em uma relação de chave primária/chave estrangeira. As relações de chave primária/chave estrangeira são definidas com restrições de tabela.

IS_GRANTABLE

varchar(3)

Indica se GRANTEE tem permissão para conceder permissões (em geral, referida como permissão de "concessão com concessão"). Pode ser YES, NO ou NULL. Um valor desconhecido ou NULL refere-se a uma fonte de dados na qual a "concessão com concessão" não é aplicável.

Permissões

Requer permissão SELECT no esquema.

Exemplos

O exemplo a seguir retorna informações de privilégio de coluna para a tabela HumanResources.Department no banco de dados AdventureWorks2012 do servidor vinculado, Seattle1.

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

Consulte também

Referência

sp_table_privileges_ex (Transact-SQL)

Procedimentos armazenados do sistema (Transact-SQL)