error con exec

tema enviado por Maria MM en SQL Server
tema iniciado el 15/01/2008

Buenos días, necesito ayuda con lo siguiente, estoy realizando un procedimiento, que recorre un campo y una tabla mientras se cumpla una condición pero la tabla y el campo son parámetros, ya q cambian según sea el caso pero no estoy muy clara como se hace. Esto es lo que estaba tratando de hacer:

ALTER PROCEDURE mepm_limpiar_repeticiones_blancos(@base varchar(150), @tabla varchar(150), @nombre_campo varchar(50))

AS

BEGIN

DECLARE

-- Sustituir los doble blanco por uno

@sentencia_while varchar(1500)

set @sentencia_while='while (select 1 from ' +  @tabla + ' where ' + @nombre_campo + 'like ''% %'')

update ' + + @tabla + ' set ' + @nombre_campo + '=replace(' + @nombre_campo + ','' '','' '') '

print @sentencia_while

exec (@sentencia_while)

END

pero cuando lo ejecuto me da un error, pero me gustaria saber como puedo hacer esto de manera q pueda ejecutarlo pidiendo los parametros que necesito para hacerlo reutilizable, trate de transformarla en una sola sentencia pero ahora no lo acepta

Gracias