Erreur variable datetime avec sp_executesql
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 :
Code:
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); |
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 :
Citation:
Échec de la conversion de la date et/ou de l'heure à partir d'une chaîne de caractères.
Code:
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 ;)