Exécuter des fonctions définies par l’utilisateur
S’applique à :SQL ServerAzure SQL Database
Exécuter une fonction définie par l’utilisateur à l’aide de Transact-SQL
Limitations et restrictions
Dans Transact-SQL, les paramètres peuvent être fournis à l’aide de la valeur ou de la valeur @parameter_name=. Un paramètre ne fait pas partie d’une transaction ; par conséquent, si un paramètre est modifié dans une transaction qui est restaurée ultérieurement, la valeur du paramètre ne revient pas à sa valeur précédente. La valeur renvoyée à l'appelant est toujours la valeur au moment du renvoie du module.
Autorisations
Les autorisations ne sont pas requises pour exécuter l’instruction EXECUTE . Cependant, des autorisations sont requises sur les éléments sécurisables référencés dans la chaîne EXECUTE. Par exemple, si la chaîne contient une instruction INSERT , l’appelant de l’instruction EXECUTE doit posséder l’autorisation INSERT sur la table cible. Les autorisations sont vérifiées au moment où l'instruction EXECUTE est rencontrée, même si celle-ci est incluse dans un module. Pour plus d’informations, consultez EXECUTE (Transact-SQL)
Utiliser Transact-SQL
Cet exemple utilise la fonction scalaire ufnGetSalesOrderStatusText
disponible dans la plupart des éditions de AdventureWorks
. L’objectif de la fonction est de retourner une valeur de texte pour l’état des ventes à partir d’un entier donné. Modifiez l’exemple en passant des entiers 1 à 7 au @Status
paramètre.
USE [AdventureWorks2022]
GO
-- Declare a variable to return the results of the function.
DECLARE @ret nvarchar(15);
-- Execute the function while passing a value to the @status parameter
EXEC @ret = dbo.ufnGetSalesOrderStatusText @Status = 5;
-- View the returned value. The Execute and Select statements must be executed at the same time.
SELECT N'Order Status: ' + @ret;
-- Result:
-- Order Status: Shipped
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour