J'ai déjà une fonction dans SQL Server 2005 comme :
ALTER function [dbo].[fCalculateEstimateDate] (@vWorkOrderID numeric)
Returns varchar(100) AS
Begin
<Function Body>
End
Je souhaite modifier cette fonction pour accepter l'ajout d'un paramètre facultatif @ToDate. Je vais ajouter une logique dans la fonction si @Todate Fourni alors faire quelque chose d'autre continuer avec le code existant.
J'ai modifié la fonction comme suit :
ALTER function [dbo].[fCalculateEstimateDate] (@vWorkOrderID numeric,@ToDate DateTime=null)
Returns varchar(100) AS
Begin
<Function Body>
End
Je peux maintenant appeler la fonction en tant que :
SELECT dbo.fCalculateEstimateDate(647,GETDATE())
Mais il y a une erreur lors de l'appel suivant :
SELECT dbo.fCalculateEstimateDate(647)
comme
Un nombre insuffisant d'arguments a été fourni pour la procédure ou fonction dbo.fCalculateEstimateDate.
ce qui, d'après ce que j'ai compris, ne devrait pas se produire.
Ai-je oublié quelque chose ? Merci d'avance.