ROUTINES (Transact-SQL)

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 extraire des informations 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 retournez cette colonne à une application qui affiche les résultats au format texte, les retours chariot imbriqués dans les résultats ROUTINE_DEFINITION peuvent affecter la mise en forme du jeu 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 le jeu de résultats dans une grille ou en retournant ROUTINE_DEFINITION dans sa propre zone de texte.

Nom de colonne

Type de données

Description

SPECIFIC_CATALOG

nvarchar(128)

Nom spécifique du catalogue Ce nom est identique à ROUTINE_CATALOG.

SPECIFIC_SCHEMA

nvarchar(128)

Nom spécifique du schéma.

ImportantImportant
N'utilisez pas les vues INFORMATION_SCHEMA pour déterminer le schéma 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 identique à ROUTINE_NAME.

ROUTINE_CATALOG

nvarchar(128)

Nom de catalogue de la fonction

ROUTINE_SCHEMA

nvarchar(128)

Nom du schéma contenant cette fonction.

ImportantImportant
N'utilisez pas les vues INFORMATION_SCHEMA pour déterminer le schéma 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ée pour un usage ultérieur.

MODULE_SCHEMA

nvarchar(128)

NULL. Réservée pour un usage ultérieur.

MODULE_NAME

nvarchar(128)

NULL. Réservée pour un usage ultérieur.

UDT_CATALOG

nvarchar(128)

NULL. Réservée pour un usage ultérieur.

UDT_SCHEMA

nvarchar(128)

NULL. Réservée pour un usage ultérieur.

UDT_NAME

nvarchar(128)

NULL. Réservée pour un usage ultérieur.

DATA_TYPE

nvarchar(128)

Type de données de la valeur renvoyée de la fonction. Renvoie la valeur table dans le cas d'une fonction table.

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 ou de valeur élevée.

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 ou de valeur élevée.

COLLATION_CATALOG

nvarchar(128)

Retourne toujours NULL.

COLLATION_SCHEMA

nvarchar(128)

Retourne toujours 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 NULL.

CHARACTER_SET_SCHEMA

nvarchar(128)

Retourne toujours 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. Renvoie la valeur NULL pour les types non numériques.

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 fractionnelle d'une seconde si la valeur renvoyée est de type datetime. Dans le cas contraire, la valeur NULL est retournée.

INTERVAL_TYPE

nvarchar(30)

Null. Réservée pour un usage ultérieur.

INTERVAL_PRECISION

smallint

Null. Réservée pour un usage ultérieur.

TYPE_UDT_CATALOG

nvarchar(128)

Null. Réservée pour un usage ultérieur.

TYPE_UDT_SCHEMA

nvarchar(128)

NULL. Réservée pour un usage ultérieur.

TYPE_UDT_NAME

nvarchar(128)

NULL. Réservée pour un usage ultérieur.

SCOPE_CATALOG

nvarchar(128)

NULL. Réservée pour un usage ultérieur.

SCOPE_SCHEMA

nvarchar(128)

NULL. Réservée pour un usage ultérieur.

SCOPE_NAME

nvarchar(128)

NULL. Réservée pour un usage ultérieur.

MAXIMUM_CARDINALITY

bigint

Null. Réservée pour un usage ultérieur.

DTD_IDENTIFIER

nvarchar(128)

Null. Réservée pour un usage ultérieur.

ROUTINE_BODY

nvarchar(30)

Renvoie la valeur SQL pour une fonction Transact-SQL et la valeur EXTERNAL pour une fonction 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 d'obtenir la définition complète, interrogez la fonction OBJECT_DEFINITION ou la colonne definition dans l'affichage catalogue sys.sql_modules.

EXTERNAL_NAME

nvarchar(128)

NULL. Réservée pour un usage ultérieur.

EXTERNAL_LANGUAGE

nvarchar(30)

NULL. Réservée pour un usage ultérieur.

PARAMETER_STYLE

nvarchar(30)

NULL. Réservée pour un usage ultérieur.

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 ultérieur.

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

Référence

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)