bonjour voici le sql que j'aimerai genéraliser pour pouvoir faire une boucle sur toutes mes tables

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
update imp_campagne
   set nb_cli =(select count(Freg) from IMP_181042_Fib)
     where campagne like 'IMP_181042_Fib';
voici le code qui me pose probleme:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
DECLARE @NOMTABLE varchar(20),@SQL varchar(300)
SET @NOMTABLE='IMP_181042_Fib'
 
set @SQL='update imp_campagne
   set nb_cli =(select count(Freg) from ' + @NOMTABLE + ')
     where campagne like ' + @NOMTABLE + ''
print @SQL
EXEC @SQL
voici le resultat

update imp_campagne
set nb_cli =(select count(Freg) from IMP_181042_Fib)
where campagne like IMP_181042_Fib
Msg*2812, Niveau*16, État*62, Ligne*8
Procédure stockée*'update imp_campagne
set nb_cli =(select count(Freg) from IMP_181042_Fib)
where campagne like IMP_181042_Fib' introuvable.