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
Base de Dados SQL do Azure
Azure SQL Managed Instance
Endpoint de análise SQL no Microsoft Fabric
Armazém no Microsoft Fabric
Base de dados SQL no Microsoft Fabric
Devolve o Transact-SQL texto fonte da definição de um objeto especificado.
Transact-SQL convenções de sintaxe
Sintaxe
OBJECT_DEFINITION ( object_id )
Arguments
object_id
É o ID do objeto a ser usado.
object_id é int, e assume-se que representa um objeto no contexto atual da base de dados.
Tipos de devolução
nvarchar(max)
Exceptions
Retorna NULL no erro ou se um chamador não tiver permissão para exibir o objeto.
Um usuário só pode visualizar os metadados de protegíveis que o usuário possui ou sobre os quais o usuário recebeu permissão. Isto significa que funções incorporadas que emitem metadados, como OBJECT_DEFINITION, podem devolver NULL se o utilizador não tiver qualquer permissão sobre o objeto. Para obter mais informações, consulte Configuração de visibilidade de metadados.
Observações
O Motor de Base de Dados SQL Server assume que object_id está no contexto atual da base de dados. A colação da definição do objeto corresponde sempre à do contexto da base de dados que chama.
OBJECT_DEFINITION aplica-se aos seguintes tipos de objetos:
C = Restrição de verificação
D = Padrão (restrição ou independente)
P = procedimento armazenado SQL
FN = função escalar SQL
R = Regra
RF = Procedimento de filtro de replicação
TR = gatilho SQL (disparador DML com âmbito de esquema, ou gatilho DDL tanto no âmbito da base de dados como no servidor)
IF = Função SQL com valor de tabela embutido
TF = função SQL com valores em tabela
V = Vista
Permissions
As definições de objetos do sistema são publicamente visíveis. A definição dos objetos de utilizador é visível para o proprietário do objeto ou para os beneficiários que tenham qualquer uma das seguintes permissões: ALTERAR, CONTROLAR, ASSUMIR PROPRIEDADE ou VIEW DEFINIÇÃO. Essas permissões são mantidas implicitamente por membros das funções de banco de dados db_owner, db_ddladmine db_securityadmin fixas.
Examples
A. Devolver o texto fonte de um objeto definido pelo utilizador
O exemplo seguinte devolve a definição de um gatilho definido pelo utilizador, uAddress, no Person esquema. A função OBJECT_ID incorporada é usada para devolver o ID do objeto do gatilho à OBJECT_DEFINITION instrução.
USE AdventureWorks2022;
GO
SELECT OBJECT_DEFINITION (OBJECT_ID(N'Person.uAddress')) AS [Trigger Definition];
GO
B. Devolver o texto fonte de um objeto do sistema
O exemplo seguinte devolve a definição do procedimento sys.sp_columnsarmazenado do sistema .
USE AdventureWorks2022;
GO
SELECT OBJECT_DEFINITION (OBJECT_ID(N'sys.sp_columns')) AS [Object Definition];
GO