Création, exécution d'une fonction scalaire
Bonjour à tous,
Je dois avouer que je galère un peu :(
Je suis actuellement en train d'apprendre les fonctions scalaires.
Je crée la fonction suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
create function [dbo].[fn_DateFormat]
(@pdate datetime, @psep char(1))
Returns char(10)
as
begin
return
convert (varchar(2), datepart (dd, @pdate))
+@psep + convert (varchar (2), datepart (mm, @pdate))
+@psep + convert (varchar (4), datepart (yy, @pdate))
end |
Oui je sais c'est simple....
Maintenant j'essaye de l’exécuter sur une table de commande et plus précisément sur la colonne date de commande !!!!
Donc d'après ce que j'ai compris :
Code:
1 2
|
execute dbo.fn_DateFormat 'datcom', '/' |
J'ai la très vague impression que j'ai loupé quelque chose .......
J'ai le message d'erreur suivant:
Citation:
Msg*8114, Niveau*16, État*5, Procédure*fn_DateFormat, Ligne*0
Erreur de conversion du type de données varchar en datetime.
Et c'est la que ça m'agace, ma colonne datcom est bien au format 'datetime'....... GGrrrrrrrrrr
Si vous avez une idée ou une petite piste de recherche ..... Je prends, merci par avance :)