¿como ejecutas el SP?
- porque si lo ejecutas como:
execute procedure SP_MODIFICA_EMPRESA(1, 'resto de parámetros'...)
Realmente no está recibiendo el caracter '1', sino el código ascii de dicho caracter.
Creo que se debería ejecutar más o menos:
execute procedure SP_MODIFICA_EMPRESA('1', 'resto de parámetros'...)
¿acierto o divago?
Saludos