Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analysplattformssystem (PDW)
SQL-analysslutpunkt i Microsoft Fabric
Lager i Microsoft Fabric
SQL-databas i Microsoft Fabric
Returnerar en rad för varje objekt som är en SQL-språkdefinierad modul i SQL Server, inklusive inbyggt kompilerad skalär användardefinierad funktion. Objekt av typen P, RF, V, TR, FN, IF, TFoch R har en associerad SQL-modul. Fristående standardvärden, objekt av typen D, har också en SQL-moduldefinition i den här vyn. En beskrivning av dessa typer type finns i kolumnen i katalogvyn sys.objects .
Mer information finns i Skalär User-Defined Functions för In-Memory OLTP.
| Kolumnnamn | Datatyp | Description |
|---|---|---|
object_id |
int | ID för objektet för det innehållande objektet. Är unik i en databas. |
definition |
nvarchar(max) | SQL-text som definierar den här modulen. Det här värdet kan också hämtas med hjälp av den OBJECT_DEFINITION inbyggda funktionen.NULL = Krypterad. |
uses_ansi_nulls |
bit | Modulen skapades med SET ANSI_NULLS ON.Alltid 0 för regler och standardvärden. |
uses_quoted_identifier |
bit | Modulen skapades med SET QUOTED_IDENTIFIER ON. |
is_schema_bound |
bit | Modulen skapades med SCHEMABINDING alternativet .Innehåller alltid värdet 1 för för internt kompilerade lagrade procedurer. |
uses_database_collation |
bit |
1= Schemabunden moduldefinition beror på standardsortering av databasen för korrekt utvärdering. annars . 0 Ett sådant beroende förhindrar att databasens standardsortering ändras. |
is_recompiled |
bit | Procedur skapades WITH RECOMPILE . |
null_on_null_input |
bit | Modulen deklarerades för att generera utdata NULL på alla NULL indata. |
execute_as_principal_id |
Int | ID för databasens EXECUTE AS huvudnamn.NULL som standard eller om EXECUTE AS CALLER.ID för det angivna huvudkontot om EXECUTE AS SELF eller EXECUTE AS <principal>.-2
=
EXECUTE AS OWNER. |
uses_native_compilation |
bit |
0 = inte inbyggt kompilerat1 = är internt kompileradStandardvärdet är 0.Gäller för: SQL Server 2014 (12.x) och senare versioner. |
is_inlineable |
bit | Anger om modulen kan infogas eller inte. Inlineability baseras på de villkor som anges i kraven.0 = kan inte infogas1 = kan infogas.För skalära användardefinierade funktioner (UDF) är 1 värdet om UDF kan infogas och 0 på annat sätt. Den innehåller alltid värdet 1 för för infogade tabellvärdesfunktioner (TVF:er) och 0 för alla andra modultyper.gäller för: SQL Server 2019 (15.x) och senare versioner. |
inline_type |
bit | Anger om inlinning är aktiverat för modulen för närvarande. 0 = inlining är inaktiverat 1 = inlining är aktiverat. För skalära användardefinierade funktioner (UDF: er) är 1 värdet om inlining är aktiverat (explicit eller implicit). Värdet är alltid 1 för infogade tabellvärdesfunktioner (TVF:er) och 0 för andra modultyper.gäller för: SQL Server 2019 (15.x) och senare versioner. |
Remarks
SQL-uttrycket för en DEFAULT begränsning, ett objekt av typen D, finns i sys.default_constraints katalogvyn. SQL-uttrycket för en CHECK begränsning, ett objekt av typen C, finns i sys.check_constraints katalogvyn.
Den här informationen beskrivs också i sys.dm_db_uncontained_entities.
Om du byter namn på en lagrad procedur, funktion, vy eller utlösare ändras inte namnet på motsvarande objekt i definitionskolumnen sys.sql_modules i katalogvyn eller definitionen som returneras av den OBJECT_DEFINITION inbyggda funktionen. Därför rekommenderar vi att du inte använder sp_rename för att byta namn på dessa objekttyper. Släpp i stället och återskapa objektet med det nya namnet. Läs mer i sp_rename.
Permissions
Synligheten för metadata i katalogvyer är begränsad till skyddsbara objekt som en användare antingen äger eller som användaren har beviljats viss behörighet för. För mer information, se inställningar för metadatasynlighet.
Examples
I följande exempel returneras object_id, schemanamn, objektnamn, objekttyp och definition av varje modul i den aktuella databasen.
SELECT sm.object_id,
ss.[name] AS [schema],
o.[name] AS object_name,
o.[type],
o.[type_desc],
sm.[definition]
FROM sys.sql_modules AS sm
INNER JOIN sys.objects AS o
ON sm.object_id = o.object_id
INNER JOIN sys.schemas AS ss
ON o.schema_id = ss.schema_id
ORDER BY o.[type], ss.[name], o.[name];