RUTINER (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalysplattformssystem (PDW)SQL-analysslutpunkt i Microsoft FabricLager i Microsoft FabricSQL-databas i Microsoft Fabric

Returnerar en rad för varje lagrad procureur och funktion som kan nås av den nuvarande användaren i den aktuella databasen. Kolumnerna som beskriver returvärdet gäller endast för funktioner. För lagrade procedurer kommer dessa kolumner att vara NULL.

För att hämta information från dessa vyer, ange det fullt kvalificerade namnet på INFORMATION_SCHEMA. view_name.

Anmärkning

Kolumnen ROUTINE_DEFINITION innehåller källsatserna som skapade funktionen eller den lagrade proceduren. Dessa källuttalanden innehåller sannolikt inbäddade vagnsreturer. Om du returnerar denna kolumn till ett program som visar resultaten i textformat, kan den inbäddade vagnen i ROUTINE_DEFINITION resultaten påverka formateringen av den övergripande resultatuppsättningen. Om du väljer kolumnen ROUTINE_DEFINITION måste du justera för de inbäddade vagnreturerna; till exempel genom att returnera resultatuppsättningen i ett rutnät eller returnera ROUTINE_DEFINITION i sin egen textruta.

Kolumnnamn Datatyp Description
SPECIFIC_CATALOG Nvarchar(128) Specifikt namn på katalogen. Detta namn är samma som ROUTINE_CATALOG.
SPECIFIC_SCHEMA Nvarchar(128) Specifikt namn på schemat.

**Viktig** Använd inte INFORMATION_SCHEMA vyer för att bestämma schemat för ett objekt. INFORMATION_SCHEMA vyer representerar endast en delmängd av metadata för ett objekt. Det enda pålitliga sättet att hitta schemat för ett objekt är att fråga katalogvyn sys.objects .
SPECIFIC_NAME Nvarchar(128) Specifikt namn på katalogen. Detta namn är samma som ROUTINE_NAME.
ROUTINE_CATALOG Nvarchar(128) Katalognamnet på funktionen.
ROUTINE_SCHEMA Nvarchar(128) Namnet på schemat som innehåller denna funktion.

**Viktig** Använd inte INFORMATION_SCHEMA vyer för att bestämma schemat för ett objekt. INFORMATION_SCHEMA vyer representerar endast en delmängd av metadata för ett objekt. Det enda pålitliga sättet att hitta schemat för ett objekt är att fråga katalogvyn sys.objects .
ROUTINE_NAME Nvarchar(128) Namnet på funktionen.
ROUTINE_TYPE Nvarchar(20) Returnerar PROCEDURE för lagrade procedurer och FUNCTION för funktioner.
MODULE_CATALOG Nvarchar(128) NOLL. Reserverad för framtida användning.
MODULE_SCHEMA Nvarchar(128) NOLL. Reserverad för framtida användning.
MODULE_NAME Nvarchar(128) NOLL. Reserverad för framtida användning.
UDT_CATALOG Nvarchar(128) NOLL. Reserverad för framtida användning.
UDT_SCHEMA Nvarchar(128) NOLL. Reserverad för framtida användning.
UDT_NAME Nvarchar(128) NOLL. Reserverad för framtida användning.
DATATYP Nvarchar(128) Datatyp av funktionens returvärde. Returnerar tabellen om en tabellvärd funktion.
CHARACTER_MAXIMUM_LENGTH int Maximal längd i tecken, om returtypen är en teckentyp.

-1 för XML- och storvärdestypdata.
CHARACTER_OCTET_LENGTH int Maximal längd i bytes, om return-typen är en teckentyp.

-1 för XML- och storvärdestypdata.
COLLATION_CATALOG Nvarchar(128) Returnerar alltid NULL.
COLLATION_SCHEMA Nvarchar(128) Returnerar alltid NULL.
COLLATION_NAME Nvarchar(128) Sorteringsnamn på returvärdet. För icke-karaktärstyper returnerar NULL.
CHARACTER_SET_CATALOG Nvarchar(128) Returnerar alltid NULL.
CHARACTER_SET_SCHEMA Nvarchar(128) Returnerar alltid NULL.
CHARACTER_SET_NAME Nvarchar(128) Namnet på teckenuppsättningen för returvärdet. För icke-karaktärstyper returnerar NULL.
NUMERIC_PRECISION smallint Numerisk precision för returvärdet. För de icke-numeriska typerna returnerar NULL.
NUMERIC_PRECISION_RADIX smallint Numerisk precisionsradix av returvärdet. För icke-numeriska typer returnerar NULL.
NUMERIC_SCALE smallint Skalan av avkastningsvärdet. För icke-numeriska typer returnerar NULL.
DATETIME_PRECISION smallint Bråkdelad precision av en sekund om returvärdet är av typen datetime. Annars returnerar NULL.
INTERVAL_TYPE Nvarchar(30) NOLL. Reserverad för framtida användning.
INTERVAL_PRECISION smallint NOLL. Reserverad för framtida användning.
TYPE_UDT_CATALOG Nvarchar(128) NOLL. Reserverad för framtida användning.
TYPE_UDT_SCHEMA Nvarchar(128) NOLL. Reserverad för framtida användning.
TYPE_UDT_NAME Nvarchar(128) NOLL. Reserverad för framtida användning.
SCOPE_CATALOG Nvarchar(128) NOLL. Reserverad för framtida användning.
SCOPE_SCHEMA Nvarchar(128) NOLL. Reserverad för framtida användning.
SCOPE_NAME Nvarchar(128) NOLL. Reserverad för framtida användning.
MAXIMUM_CARDINALITY bigint NOLL. Reserverad för framtida användning.
DTD_IDENTIFIER Nvarchar(128) NOLL. Reserverad för framtida användning.
ROUTINE_BODY Nvarchar(30) Returnerar SQL för en Transact-SQL funktion och EXTERNAL för en externt skriven funktion.

Funktioner kommer alltid att vara SQL.
ROUTINE_DEFINITION Nvarchar(4000) Returnerar de första 4000 tecknen i definitionstexten för funktionen eller den lagrade proceduren om funktionen eller den lagrade proceduren inte är krypterad. Annars returnerar NULL.

För att säkerställa att du får hela definitionen, sök i funktionen OBJECT_DEFINITION eller definitionskolumnen i katalogvyn sys.sql_modules .
EXTERNAL_NAME Nvarchar(128) NOLL. Reserverad för framtida användning.
EXTERNAL_LANGUAGE Nvarchar(30) NOLL. Reserverad för framtida användning.
PARAMETER_STYLE Nvarchar(30) NOLL. Reserverad för framtida användning.
IS_DETERMINISTIC nvarchar(10) Ger JA om rutinen är deterministisk.

Returnerar NEJ om rutinen är icke-deterministisk.

Returnerar alltid NEJ för lagrade procedurer.
SQL_DATA_ACCESS Nvarchar(30) Returnerar något av följande värden:

NONE = Funktionen innehåller inte SQL.

CONTAINS = Funktionen innehåller möjligen SQL.

READS = Funktionen läser eventuellt SQL-data.

MODIFIES = Funktionen modifierar eventuellt SQL-data.

Returnerar READS för alla funktioner och MODIFIES för alla lagrade procedurer.
IS_NULL_CALL nvarchar(10) Indikerar om rutinen kommer att anropas om något av dess argument är NULL.
SQL_PATH Nvarchar(128) NOLL. Reserverad för framtida användning.
SCHEMA_LEVEL_ROUTINE nvarchar(10) Returnerar JA om schemanivåfunktion, eller NEJ om det inte är en schemanivåfunktion.

Svarar alltid JA.
MAX_DYNAMIC_RESULT_SETS smallint Maximalt antal dynamiska resultatuppsättningar som återges av rutinen.

Returnerar 0 om funktioner.
IS_USER_DEFINED_CAST nvarchar(10) Returnerar JA om användardefinierad cast-funktion, och NEJ om det inte är en användardefinierad cast-funktion.

Returnerar alltid NEJ.
IS_IMPLICITLY_INVOCABLE nvarchar(10) Returnerar JA om rutinen kan anropas implicit, och NEJ om funktionen inte kan anropas implicit.

Returnerar alltid NEJ.
SKAPAD datetime Tiden då rutinen skapades.
LAST_ALTERED datetime Senast modifierades funktionen.

Se även

Systemvyer (Transact-SQL)
Informationsschemavyer (Transact-SQL)
sys.columns (Transact-SQL)
sys.objects (Transact-SQL)
sys.procedures (Transact-SQL)
sys.sql_moduler (Transact-SQL)