Concatenar ceros

leo
01 de Marzo del 2005
Hola a todos,

tengo una tabla con un campo tipo texto que guarda consecutivos que van desde 0000 hasta 9999, si yo elimino 3 registro necesito actualizar los demas para no perder el orden de los consecutivos:
por ejemplo si elimino los registros 0865-0866-0867, necesito que el siguiente registro que es el 0868 pase a ser el 0865, el 0869 pase a ser 0866 y asi hasta el ultimo consecutivo.

esto lo hago con la siguiente instruccion, siendo el 3 el numero de registro eliminados:
Update tabla Set Campo= Campo-3
Where Campo > 0867

el problema que se me presenta es que el campo que guarda los consecutivos es tipo texto y cuando le resto una cantidad entera(en este caso 3), se pierden los ceros de la izquierda lo cual no puedo permitir, entonces por ejemplo el registro 0868 que debe quedar como 0865 queda como 865 asi sucesivamente

¿como puedo conservar los ceros de la izquierda de un campo tipo texto cuando le resto un número entero?

Gracias por su colaboración.

Isa? Islas
01 de Marzo del 2005
debes RELLENAR tu dato con CEROS, a la izquierda, aqui un ejemplo:

declare @myint int
set @myint = 234
select replicate ('0',(10 - len(@myint))) + convert(varchar, @myint)