Partilhar via


sp_table_privileges_ex (Transact-SQL)

Aplica-se a:SQL Server

Devolve informação de privilégio sobre a tabela especificada proveniente do servidor ligado especificado.

Transact-SQL convenções de sintaxe

Sintaxe

sp_table_privileges_ex
    [ @table_server = ] N'table_server'
    [ , [ @table_name = ] N'table_name' ]
    [ , [ @table_schema = ] N'table_schema' ]
    [ , [ @table_catalog = ] N'table_catalog' ]
    [ , [ @fUsePattern = ] fUsePattern ]
[ ; ]

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 para a qual fornecer informação de privilégios da tabela. @table_name é sysname, com um padrão de NULL.

[ @table_schema = ] N'table_schema'

O esquema da tabela. Em alguns ambientes de SGBD, este é o proprietário 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.

[ @fUsePattern = ] fUsePattern

Determina se os caracteres _, %, [, e ] são interpretados como caracteres coringa. Os valores válidos são 0 (a correspondência de padrões está desligada) e 1 (a correspondência de padrões está ativada). @fUsePattern é bit, com um padrão de 1.

Valores de código de retorno

Nenhum.

Conjunto de resultados

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.
GRANTOR sysname Nome de utilizador da base de dados que concedeu permissões sobre isto TABLE_NAME para a lista GRANTEE. No SQL Server, esta coluna é sempre a mesma que o TABLE_OWNER. Este campo devolve sempre um valor. Além disso, a GRANTOR coluna pode ser o proprietário da base de dados (TABLE_OWNER) ou um utilizador a quem o proprietário da base de dados concedeu permissão 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 TABLE_NAME pela lista GRANTORde . Este campo devolve sempre um valor.
PRIVILEGE varchar(32) Uma das permissões disponíveis para tabelas. As permissões de tabela podem ser um dos seguintes valores, ou outros valores suportados pela fonte de dados quando a implementação é definida.

SELECT = GRANTEE pode recuperar dados de uma ou mais das colunas.

INSERT = GRANTEE pode fornecer dados para novas linhas para uma ou mais das colunas.

UPDATE = GRANTEE pode modificar dados existentes para uma ou mais colunas.

DELETE = GRANTEE Pode remover linhas da tabela.

REFERENCES = GRANTEE pode referenciar uma coluna numa tabela estrangeira numa relação chave primária/chave estrangeira. No SQL Server, as relações chave primária/chave estrangeira são definidas através da utilização de restrições de tabela.

O âmbito da ação dado GRANTEE ao por um privilégio de tabela específico depende da fonte de dados. Por exemplo, a UPDATE permissão poderia permitir que GRANTEE atualize todas as colunas de uma tabela numa fonte de dados e apenas aquelas para as quais tem GRANTOR permissão UPDATE noutra fonte de dados.
IS_GRANTABLE Varchar(3) Indica se é GRANTEE permitido conceder permissões a outros utilizadores. Isto é frequentemente referido como "conceder com autorização". Pode ser YES, NO, ou NULL. Um valor desconhecido, ou NULL, refere-se a uma fonte de dados em que "grant with grant" não é aplicável.

Observações

Os resultados devolvidos estão ordenados por TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, e PRIVILEGE.

Permissions

Requer SELECT permissão no esquema.

Examples

O exemplo seguinte devolve informação de privilégio sobre tabelas com nomes que começam com Product na AdventureWorks2025 base de dados a partir do servidor Seattle1ligado especificado . Assume-se que o SQL Server é o servidor ligado.

EXECUTE sp_table_privileges_ex
    @table_server = 'Seattle1',
    @table_name = 'Product%',
    @table_schema = 'Production',
    @table_catalog = 'AdventureWorks2022';