Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Passer une liste vide au paramètre de type de table défini par l'utilisateur sur une fonction scalaire

Les arguments des fonctions ne sont pas facultatifs, vous devez donc transmettre un TVP compatible à la fonction. Je ne suis pas sûr de comprendre l'intérêt d'une fonction à valeur scalaire qui prend un type TVP mais n'en a pas besoin - que fait cette fonction et comment peut-elle le faire sans le TVP? Êtes-vous sûr que ce n'est pas censé être un TVF ?

Quoi qu'il en soit, voici comment vous pouvez passer un TVP vide à une fonction scalaire :

DECLARE @x dbo.TVP_type_name;
SELECT dbo.function_name(@x);