Unix - RPAD y LPAD no funciona

 
Vista:

RPAD y LPAD no funciona

Publicado por Pepo (1 intervención) el 19/02/2016 11:03:18
Buenos dias,

tengo un problema que a continuacion os voy a exponer a ver si alguien me puede ayudar.:

Tengo un script que se conecta a una base de datos oracle, y debo realizar varias descargas de datos de varias tablas; y la salida debe ser un archivo de texto, el cual quiero que me deje bien cuadrado para su posterior carga en otra base de datos de otra maquina.

El caso es que mi script de unix tiene implicito la conexion de la base de datos y la select de la tabla que quiero descargar la he metido en un archivo .sql de una ruta de la maquina sobre la cual ejecuto el sript de unix.

Hasta aqui todo bien, se conecta, ejecuto y funciona todo a excepcion de RPAD y LPAD, os explico, he detectado que si pongo la funcion RPAD ó LPAD indicando que rellene con cualquier caracter lo hace perfectamente, pero a la hora de poner que lo rellena con espacios no lo hace

Funciona de esta manera
NVL(LPAD(TRIM(EMPLEADO),15,'-'),,'NULO ')

NO Funciona de esta manera
NVL(LPAD(TRIM(EMPLEADO),15),'NULO ')
NVL(LPAD(TRIM(EMPLEADO),15,' '),'NULO ')

He probado bastante veces y no encuentro la solución, ¿podeis ayudarme por favor? No se si puede ser problema de que al llamar desde el shell script al sql no funcione o cual es el motivo?.

Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RPAD y LPAD no funciona

Publicado por Tom (178 intervenciones) el 18/03/2016 11:25:58
Realmente es prácticamente imposible darte alguna solución partiendo de los datos que proporcionas ...

Así, por adivinar algo, te diría que cuando pasas el resultado de la ejecución de tus comandos sql a variables en el shell script estás obviando los espacios en blanco.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar