ROUTINES (Transact-SQL)

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Point de terminaison analytique SQL dans Microsoft FabricEntrepôt dans Microsoft Fabric

Renvoie une ligne pour chaque procédure stockée et chaque fonction accessibles à l'utilisateur actuel dans la base de données actuelle. Les colonnes qui décrivent la valeur de retour s'appliquent uniquement aux fonctions. Pour les procédures stockées, ces colonnes comportent la valeur NULL.

Pour récupérer des informations à partir de ces vues, spécifiez le nom complet de INFORMATION_SCHEMA.view_name.

Remarque

La colonne ROUTINE_DEFINITION contient les instructions sources qui ont servi à créer la fonction ou la procédure stockée. Ces instructions sources sont susceptibles de contenir des retours-chariot imbriqués. Si vous renvoyez cette colonne à une application qui affiche les résultats au format texte, les retours-chariot imbriqués dans les résultats ROUTINE_DEFINITION peuvent modifier la mise en forme de l'ensemble de résultats global. Si vous sélectionnez la colonne ROUTINE_DEFINITION, vous devez ajuster les retours-chariot imbriqués, en transférant par exemple l'ensemble de résultats dans une grille ou en réintégrant ROUTINE_DEFINITION dans sa propre zone de texte.

Nom de la colonne Type de données Description
SPECIFIC_CATALOG nvarchar(128) Nom spécifique du catalogue Ce nom est le même que ROUTINE_CATALOG.
SPECIFIC_SCHEMA nvarchar(128) Nom spécifique du schéma.

** Important ** N’utilisez pas INFORMATION_SCHEMA vues pour déterminer le schéma d’un objet. Les vues INFORMATION_SCHEMA représentent uniquement un sous-ensemble des métadonnées d’un objet. La seule méthode fiable pour rechercher le schéma d’un objet est d’interroger l’affichage catalogue sys.objects.
SPECIFIC_NAME nvarchar(128) Nom spécifique du catalogue Ce nom est le même que ROUTINE_NAME.
ROUTINE_CATALOG nvarchar(128) Nom de catalogue de la fonction
ROUTINE_SCHEMA nvarchar(128) Nom du schéma contenant cette fonction.

** Important ** N’utilisez pas INFORMATION_SCHEMA vues pour déterminer le schéma d’un objet. Les vues INFORMATION_SCHEMA représentent uniquement un sous-ensemble des métadonnées d’un objet. La seule méthode fiable pour rechercher le schéma d’un objet est d’interroger l’affichage catalogue sys.objects.
ROUTINE_NAME nvarchar(128) Nom de la fonction.
ROUTINE_TYPE nvarchar(20) Renvoie la valeur PROCEDURE pour les procédures stockées et la valeur FUNCTION pour les fonctions.
MODULE_CATALOG nvarchar(128) NULL. Réservé pour un usage futur.
MODULE_SCHEMA nvarchar(128) NULL. Réservé pour un usage futur.
MODULE_NAME nvarchar(128) NULL. Réservé pour un usage futur.
UDT_CATALOG nvarchar(128) NULL. Réservé pour un usage futur.
UDT_SCHEMA nvarchar(128) NULL. Réservé pour un usage futur.
UDT_NAME nvarchar(128) NULL. Réservé pour un usage futur.
DATA_TYPE nvarchar(128) Type de données de la valeur renvoyée de la fonction. Retourne la table si une fonction table est évaluée.
CHARACTER_MAXIMUM_LENGTH int Longueur maximale en caractères, lorsque la valeur renvoyée est de type caractère.

-1 pour les données de type xml et de grande valeur.
CHARACTER_OCTET_LENGTH int Longueur maximale en octets, lorsque la valeur renvoyée est de type caractère.

-1 pour les données de type xml et de grande valeur.
COLLATION_CATALOG nvarchar(128) Retourne toujours la valeur Null.
COLLATION_SCHEMA nvarchar(128) Retourne toujours la valeur Null.
COLLATION_NAME nvarchar(128) Nom de classement de la valeur renvoyée. Renvoie la valeur NULL pour les types non-caractère.
CHARACTER_SET_CATALOG nvarchar(128) Retourne toujours la valeur Null.
CHARACTER_SET_SCHEMA nvarchar(128) Retourne toujours la valeur Null.
CHARACTER_SET_NAME nvarchar(128) Nom du jeu de caractères de la valeur renvoyée. Renvoie la valeur NULL pour les types non-caractère.
NUMERIC_PRECISION smallint Précision numérique de la valeur renvoyée. Pour les types non numériques, retourne NULL.
NUMERIC_PRECISION_RADIX smallint Base de la précision numérique de la valeur renvoyée. Renvoie la valeur NULL pour les types non numériques.
NUMERIC_SCALE smallint Échelle de la valeur renvoyée. Renvoie la valeur NULL pour les types non numériques.
DATETIME_PRECISION smallint Précision fractionnaire d’une seconde si la valeur de retour est de type datetime. Dans le cas contraire, la valeur NULL est retournée.
INTERVAL_TYPE nvarchar(30) NULL. Réservé pour un usage futur.
INTERVAL_PRECISION smallint NULL. Réservé pour un usage futur.
TYPE_UDT_CATALOG nvarchar(128) NULL. Réservé pour un usage futur.
TYPE_UDT_SCHEMA nvarchar(128) NULL. Réservé pour un usage futur.
TYPE_UDT_NAME nvarchar(128) NULL. Réservé pour un usage futur.
SCOPE_CATALOG nvarchar(128) NULL. Réservé pour un usage futur.
SCOPE_SCHEMA nvarchar(128) NULL. Réservé pour un usage futur.
SCOPE_NAME nvarchar(128) NULL. Réservé pour un usage futur.
MAXIMUM_CARDINALITY bigint NULL. Réservé pour un usage futur.
DTD_IDENTIFIER nvarchar(128) NULL. Réservé pour un usage futur.
ROUTINE_BODY nvarchar(30) Retourne SQL pour une fonction Transact-SQL et EXTERNAL pour une fonction écrite en externe.

Les fonctions sont toujours en SQL.
ROUTINE_DEFINITION nvarchar(4000) Retourne les 4 000 premiers caractères du texte de définition de la fonction ou de la procédure stockée, si ces dernières ne sont pas chiffrées. Dans le cas contraire, la valeur NULL est retournée.

Pour vous assurer que vous obtenez la définition complète, interrogez la fonction OBJECT_DEFINITION ou la colonne de définition dans l’affichage catalogue sys.sql_modules .
EXTERNAL_NAME nvarchar(128) NULL. Réservé pour un usage futur.
EXTERNAL_LANGUAGE nvarchar(30) NULL. Réservé pour un usage futur.
PARAMETER_STYLE nvarchar(30) NULL. Réservé pour un usage futur.
IS_DETERMINISTIC nvarchar(10) Renvoie la valeur YES si la routine est déterministe.

Renvoie la valeur NO si la routine est non déterministe.

Renvoie toujours la valeur NO pour les procédures stockées.
SQL_DATA_ACCESS nvarchar(30) Renvoie l'une des valeurs suivantes :

NONE = La fonction de contient pas de SQL.

CONTAINS = La fonction est susceptible de contenir du SQL.

READS = La fonction est susceptible de lire des données SQL.

MODIFIES = La fonction est susceptible de modifier des données SQL.

La valeur READS est renvoyée pour toutes les fonctions et la valeur MODIFIES est renvoyée pour toutes les procédures stockées.
IS_NULL_CALL nvarchar(10) Indique si la routine est appelée lorsque l'un de ses arguments a la valeur NULL.
SQL_PATH nvarchar(128) NULL. Réservé pour un usage futur.
SCHEMA_LEVEL_ROUTINE nvarchar(10) Renvoie YES dans le cas d'une fonction au niveau du schéma, ou NO dans le cas contraire.

Retourne toujours YES.
MAX_DYNAMIC_RESULT_SETS smallint Nombre maximal d'ensembles de résultats dynamiques renvoyés par la routine.

Renvoie 0 dans le cas des fonctions.
IS_USER_DEFINED_CAST nvarchar(10) Renvoie YES dans le cas d'une fonction CAST définie par l'utilisateur, ou NO dans le cas contraire.

Renvoie toujours NO.
IS_IMPLICITLY_INVOCABLE nvarchar(10) Renvoie la valeur YES si la routine peut être appelée implicitement et NO dans le cas contraire.

Renvoie toujours NO.
CREATED datetime Heure de création de la routine.
LAST_ALTERED datetime Dernière date/heure de modification de la fonction.

Voir aussi

Vues système (Transact-SQL)
Vues de schémas d'informations (Transact-SQL)
sys.columns (Transact-SQL)
sys.objects (Transact-SQL)
sys.procedures (Transact-SQL)
sys.sql_modules (Transact-SQL)