Bonjour,
J'essaie d'exécuter une chaîne de caractère (je vais chercher des noms de colonnes avec des curseurs que je met en variables ...etc , je vous passe les détails) et au final, j'en arrive à exécuter ceci en abrégeant considérablement et en enlevant les variables qui fonctionne correctement :
et le résultat me donne cette erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 declare @exercice varchar(30) Set @exercice = 'Exercice 2004-2005' Exec ('Update ZZZCHEV_TB_MENSUEL Set Exce_Prec = ( Select CHM_QTEMONTURE from ZZZCHEV_CHIFFRE_MENSUEL Where CHM_MAGASIN = 004 and CHM_ANNEE = 2005 and CHM_MOIS = 2) where Exercice = ' + @Exercice + ' and Magasin = 004 and Colonne = 1')
Serveur*: Msg 170, Niveau 15, État 1, Ligne 5
Ligne 5 : syntaxe incorrecte vers '2004'.
En fait, il faudrait que j'arrive à mettre des côtes dans la chaîne de caractère mais je ne sais pas comment faire.
Le plus étonnant c'est que quand je met la valeur 'Exercice' dans la variable @exercice comme ceci, ça fonctionne:
mais quand je met la valeur Exercice20042005 dans la variable @Exercice comme ceci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 declare @exercice varchar(30) Set @exercice = 'Exercice' Exec ('Update ZZZCHEV_TB_MENSUEL Set Exce_Prec = ( Select CHM_QTEMONTURE from ZZZCHEV_CHIFFRE_MENSUEL Where CHM_MAGASIN = 004 and CHM_ANNEE = 2005 and CHM_MOIS = 2) where Exercice = ' + @Exercice + ' and Magasin = 004 and Colonne = 1')
j'ai alors le message d'erreur suivant (qui n'est pas le même qu'auparavant) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 declare @exercice varchar(14) Set @exercice = 'Exercice20042005' Exec ('Update ZZZCHEV_TB_MENSUEL Set Exce_Prec = ( Select CHM_QTEMONTURE from ZZZCHEV_CHIFFRE_MENSUEL Where CHM_MAGASIN = 004 and CHM_ANNEE = 2005 and CHM_MOIS = 2) where Exercice = ' + @Exercice + ' and Magasin = 004 and Colonne = 1')
Serveur*: Msg 207, Niveau 16, État 3, Ligne 1
'Exercice20042005' : nom de colonne incorrect.
ça fait des heures que je cherche, je coule là ...![]()
Partager