Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Base de dados SQL no Microsoft Fabric
Você pode obter informações sobre a definição ou as propriedades de uma função definida pelo usuário no SQL Server usando o SQL Server Management Studio ou o Transact-SQL. Talvez seja necessário ver a definição da função para entender como seus dados são derivados das tabelas de origem ou para ver os dados definidos pela função.
Se você alterar o nome de um objeto referenciado por uma função, deverá modificar essa função para que seu texto reflita o novo nome. Portanto, antes de renomear um objeto, exiba as dependências do objeto primeiro para determinar se alguma função é afetada pela alteração proposta.
Permissões
Usar sys.sql_expression_dependencies para localizar todas as dependências em uma função requer a permissão VIEW DEFINITION no banco de dados e a permissão SELECT em sys.sql_expression_dependencies para o banco de dados. As definições de objeto do sistema, como as retornadas em OBJECT_DEFINITION, são publicamente visíveis.
Usar o SQL Server Management Studio
Mostrar as propriedades de uma função definida pelo usuário
No Pesquisador de Objetos , selecione o sinal de adição ao lado do banco de dados que contém a função para a qual você deseja exibir as propriedades e, em seguida, selecione o sinal de adição para expandir a pasta Programação.
Selecione o sinal de adição para expandir a pasta Funções.
Selecione o sinal de mais para expandir a pasta que contém a função cujas propriedades deseja visualizar:
- Função com valor de tabela
- Função com valor escalar
- Função de Agregação
Clique com o botão direito do rato na função cujas propriedades pretende visualizar e selecione Propriedades.
As propriedades a seguir aparecem na caixa de diálogo Propriedades da função -function_name.
Nome da função Descrição Base de dados O nome do banco de dados que contém essa função. Servidor O nome da instância do servidor atual. Utilizador O nome do usuário desta conexão. Data de criação Exibe a data em que a função foi criada. Executar como Contexto de execução para a função. Nome O nome da função atual. Esquema Exibe o esquema que possui a função. Objeto do sistema Indica se a função é um objeto do sistema. Os valores são TrueeFalse.ANSI NULLs Indica se o objeto foi criado com a opção ANSI NULLs. Criptografado Indica se a função está criptografada. Os valores são TrueeFalse.Tipo de função O tipo de função definida pelo usuário. Identificador de cotação Indica se o objeto foi criado com a opção de identificador entre aspas. Vinculado ao esquema Indica se a função está ligada ao esquema. Os valores são verdadeiro e falso. Para obter informações sobre funções ligadas ao esquema, consulte a seção SCHEMABINDING de CREATE FUNCTION (Transact-SQL).
Utilize Transact-SQL
Obter a definição e as propriedades de uma função
No Pesquisador de Objetos , conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, selecione Nova Consulta.
Copie e cole um dos exemplos a seguir na janela de consulta e selecione Executar.
O exemplo de código a seguir obtém o nome da função, a definição e as propriedades relevantes.
USE AdventureWorks2022; GO -- Get the function name, definition, and relevant properties SELECT sm.object_id, OBJECT_NAME(sm.object_id) AS object_name, o.type, o.type_desc, sm.definition, sm.uses_ansi_nulls, sm.uses_quoted_identifier, sm.is_schema_bound, sm.execute_as_principal_id -- using the two system tables sys.sql_modules and sys.objects FROM sys.sql_modules AS sm JOIN sys.objects AS o ON sm.object_id = o.object_id -- from the function 'dbo.ufnGetProductDealerPrice' WHERE sm.object_id = OBJECT_ID('dbo.ufnGetProductDealerPrice') ORDER BY o.type; GOO exemplo de código a seguir obtém a definição da função de exemplo
dbo.ufnGetProductDealerPrice.USE AdventureWorks2022; GO -- Get the definition of the function dbo.ufnGetProductDealerPrice SELECT OBJECT_DEFINITION (OBJECT_ID('dbo.ufnGetProductDealerPrice')) AS ObjectDefinition; GO
Para obter mais informações, consulte sys.sql_modules (Transact-SQL) e OBJECT_DEFINITION (Transact-SQL).
Obter as dependências de uma função
No Pesquisador de Objetos , conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, selecione Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e selecione Executar.
USE AdventureWorks2022; GO -- Get all of the dependency information SELECT OBJECT_NAME(sed.referencing_id) AS referencing_entity_name, o.type_desc AS referencing_description, COALESCE(COL_NAME(sed.referencing_id, sed.referencing_minor_id), '(n/a)') AS referencing_minor_id, sed.referencing_class_desc, sed.referenced_class_desc, sed.referenced_server_name, sed.referenced_database_name, sed.referenced_schema_name, sed.referenced_entity_name, COALESCE(COL_NAME(sed.referenced_id, sed.referenced_minor_id), '(n/a)') AS referenced_column_name, sed.is_caller_dependent, sed.is_ambiguous -- from the two system tables sys.sql_expression_dependencies and sys.object FROM sys.sql_expression_dependencies AS sed INNER JOIN sys.objects AS o ON sed.referencing_id = o.object_id -- on the function dbo.ufnGetProductDealerPrice WHERE sed.referencing_id = OBJECT_ID('dbo.ufnGetProductDealerPrice'); GO
Para obter mais informações, consulte sys.sql_expression_dependencies (Transact-SQL) e sys.objects (Transact-SQL).