Exibir a definição de um procedimento armazenado
Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do AzureAzure Synapse AnalyticsPDW (Analytics Platform System)
Exibir a definição de um procedimento armazenado
Este artigo descreve como exibir a definição de procedimento no Pesquisador de Objetos e usando um procedimento armazenado do sistema, uma função do sistema e a exibição do catálogo de objetos no Editor de Consultas.
Segurança
Permissões
Procedimento armazenado do sistema: sp_helptext
Requer associação à função pública . Definições de objeto de sistema são publicamente visíveis. A definição de objetos do usuário é visível ao proprietário do objeto e às entidades autorizadas que tiverem qualquer uma das seguintes permissões: ALTER, CONTROL, TAKE OWNERSHIP ou VIEW DEFINITION.
Função do sistema: OBJECT_DEFINITION
Definições de objeto de sistema são publicamente visíveis. A definição de objetos do usuário é visível ao proprietário do objeto e às entidades autorizadas que tiverem qualquer uma das seguintes permissões: ALTER, CONTROL, TAKE OWNERSHIP ou VIEW DEFINITION. Estas permissões são mantidas implicitamente por membros das funções fixas de banco de dados db_owner, db_ddladmine db_securityadmin .
Exibição de catálogo de objeto: sql_modules
A visibilidade dos metadados em exibições do catálogo está limitada aos protegíveis que pertencem a um usuário ou para os quais o usuário recebeu permissão. Para obter mais informações, consulte Metadata Visibility Configuration.
Observação
O procedimento armazenado do sistema sp_helptext
não tem suporte no Azure Synapse Analytics. Em vez disso, use a exibição do catálogo de objetos sys.sql_modules
. São fornecidos exemplos mais adiante neste artigo.
Como exibir as definições de um procedimento armazenado
Você pode usar um dos itens a seguir:
Como usar o SQL Server Management Studio.
Para exibir a definição de um procedimento armazenado no Pesquisador de Objetos:
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados e expanda-a.
Expanda Bancos de Dados, expanda o banco de dados ao qual pertence o procedimento e expanda Programação.
Expanda Procedimentos Armazenados, clique com o botão direito do mouse no procedimento e selecione Criar script do Procedimento Armazenado como, depois escolha um dos seguintes: Criar para, Alterar para ou Remover e Criar para.
Selecione Janela do Editor de Nova Consulta. Isso exibirá a definição de procedimento.
Usando o Transact-SQL
Para exibir a definição de um procedimento no Editor de Consultas
Procedimento armazenado do sistema: sp_helptext
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra de ferramentas, selecione Nova consulta.
Na janela de consulta, insira a instrução a seguir que usa o procedimento armazenado do sistema
sp_helptext
. Altere os nomes do banco de dados e do procedimento armazenado para fazer referência ao banco de dados e ao procedimento armazenado que você quer.USE AdventureWorks2022; GO EXEC sp_helptext N'AdventureWorks2022.dbo.uspLogError';
Função do sistema: OBJECT_DEFINITION
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra de ferramentas, selecione Nova consulta.
Na janela de consulta, insira as instruções a seguir que usam a função de sistema
OBJECT_DEFINITION
. Altere os nomes do banco de dados e do procedimento armazenado para fazer referência ao banco de dados e ao procedimento armazenado que você quer.USE AdventureWorks2022; GO SELECT OBJECT_DEFINITION (OBJECT_ID(N'AdventureWorks2022.dbo.uspLogError'));
Exibição do catálogo de objetos: sys.sql_modules
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra de ferramentas, selecione Nova consulta.
Na janela de consulta, insira as instruções a seguir que usam a exibição de catálogo
sys.sql_modules
. Altere os nomes do banco de dados e do procedimento armazenado para fazer referência ao banco de dados e ao procedimento armazenado que você quer.USE AdventureWorks2022; GO SELECT [definition] FROM sys.sql_modules WHERE object_id = (OBJECT_ID(N'dbo.uspLogError'));
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários