Bonjour,
J'ai un soucis de conversion de date lorsque j'exécute une requête depuis un sp_executesql.
Voici le code sans sp_executesql qui fonctionne parfaitement :
Voici un exemple des différents codes que j'ai pu essayer mais sans succès, je me retrouve toujours avec des erreurs de ce type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 DECLARE @datedebut_percoef datetime; SET @datedebut_percoef = '01/01/2019'; DECLARE @datefin_percoef datetime; SET @datefin_percoef = '31/12/2019'; /** RESULTAT OK **/ SELECT * FROM dbo.fnGetSortieFournSpe(@datedebut_percoef, @datefin_percoef);
Échec de la conversion de la date et/ou de l'heure à partir d'une chaîne de caractères.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 DECLARE @datedebut_percoef datetime; SET @datedebut_percoef = '01/01/2019'; DECLARE @datefin_percoef datetime; SET @datefin_percoef = '31/12/2019'; DECLARE @sqltest nvarchar (1000); SET @sqltest = N'SELECT * FROM dbo.fnGetSortieFournSpe(' + @datedebut_percoef + ', ' + @datefin_percoef + ')'; EXEC sp_executesql @sqltest; SET @sqltest = N'SELECT * FROM dbo.fnGetSortieFournSpe(' + CAST(@datedebut_percoef As nvarchar(1000)) + ', ' + CAST(@datefin_percoef As nvarchar(1000)) + ')'; EXEC sp_executesql @sqltest; DECLARE @sqltest nvarchar (1000); SET @sqltest = N'SELECT * FROM dbo.fnGetSortieFournSpe(''' + @datedebut_percoef + ''', ''' + @datefin_percoef + ''')'; EXEC sp_executesql @sqltest; SET @sqltest = N'SELECT * FROM dbo.fnGetSortieFournSpe(' + CONVERT(datetime, @datedebut_percoef , 103) + ', ' + CONVERT(datetime, @datefin_percoef , 103) + ')'; EXEC sp_executesql @sqltest;
Pourriez-vous m'aider svp ?
En vous remerciant par avance![]()
Partager