sys.sql_modules (Transact-SQL)
Retorna uma linha para cada objeto que é um módulo definido em linguagem SQL no SQL Server. Objetos de tipo P, RF, V, TR, FN, IF, TF e R têm um módulo SQL associado. Padrões autônomos, objetos de tipo D, também têm uma definição de módulo SQL nessa exibição. Para obter uma descrição desses tipos, consulte a coluna type na exibição do catálogo sys.objects.
Aplica-se a: SQL Server (SQL Server 2008 até a versão atual), Banco de dados SQL do Windows Azure (versão inicial até a versão atual). |
Nome da coluna |
Tipo de dados |
Descrição |
|
---|---|---|---|
object_id |
int |
ID do objeto contentor. É exclusivo em um banco de dados. |
|
definition |
nvarchar(max) |
Texto SQL que define esse módulo. NULL = Criptografado. |
|
uses_ansi_nulls |
bit |
O módulo foi criado com SET ANSI_NULLS ON. Sempre será = 0 para regras e padrões. |
|
uses_quoted_identifier |
bit |
O módulo foi criado com SET QUOTED_IDENTIFIER ON. |
|
is_schema_bound |
bit |
O módulo foi criado com a opção SCHEMABINDING. Sempre contém um valor de 1 para procedimentos armazenados compilados nativamente. |
|
uses_database_collation |
bit |
1 = A definição de módulo associada a esquema depende do agrupamento padrão do banco de dados para avaliação correta; caso contrário, 0. Tal dependência impede a alteração do agrupamento padrão do banco de dados. |
|
is_recompiled |
bit |
O procedimento foi criado com a opção WITH RECOMPILE. |
|
null_on_null_input |
bit |
O módulo foi declarado para produzir uma saída NULL em qualquer entrada NULL. |
|
execute_as_principal_id |
Int |
A identificação do principal de banco de dados EXECUTE AS. NULL por padrão ou se EXECUTE AS CALLER. ID da entidade de segurança especificada, se EXECUTE AS SELF ou EXECUTE AS <entidade de segurança>. -2 = EXECUTE AS OWNER. |
|
uses_native_compilation |
bit |
0 = não compilado originalmente 1 = é compilado originalmente O valor padrão é 0.
|
Comentários
A expressão SQL de uma restrição DEFAULT, objeto de tipo D, é encontrada na exibição do catálogo sys.default_constraints. A expressão SQL para uma restrição CHECK, objeto de tipo C, é encontrada na exibição do catálogo sys.check_constraints.
Essas informações também são descritas em sys.dm_db_uncontained_entities (Transact-SQL).
Permissões
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 Configuração de visibilidade de metadados.
Exemplos
O exemplo a seguir retorna o nome, o tipo e a definição de cada módulo no banco de dados atual.
SELECT sm.object_id, OBJECT_NAME(sm.object_id) AS object_name, o.type, o.type_desc, sm.definition
FROM sys.sql_modules AS sm
JOIN sys.objects AS o ON sm.object_id = o.object_id
ORDER BY o.type;
GO
Consulte também
Referência
Exibições de catálogo (Transact-SQL)
Exibições do catálogo de objeto (Transact-SQL)
Conceitos
Consultando as perguntas frequentes do catálogo do sistema do SQL Server