![]() |
Quitar espacios de campos CHAR
Hola!
Tengo el siguiente problema: Todas las tablas que componen una aplicación tienen sus campos alfanuméricos declarados como CHAR(n). Al principio no hice mucho caso de que existe un VARCHAR(n) y ahora me arrepiento :rolleyes: . El caso es que necesito imprimir (con Quick Reports) un informe que tenga el nombre y apellidos del cliente unidos, pero al concatenar los dos campos siempre rellena el nombre con espacios en blanco, y Interbase (v 6.5) no tiene ninguna función similar al TRIM. Lo ideal sería lo siguiente: select trim(cli_nombre)||' '||trim(cli_apellidos) as cli_nombrecompleto Pero no puedorrr... ¿Alguien se ha topado con este problema? ¿Una pista para la solución? Gracias! |
en realidad si que tienes trim, creo que es LRTRIM (Left-Right trim), pero me parece que está definida en la freeudf.dll
|
Una solución, sin pasar por tener que instalar alguna libreria de funciones, sería borrar los campos que tienes definidos como char(n) y crearlos de nuevo como varchar(n).
La otra solución es buscar una librería de udf's que contenga alguna función que pueda hacer lo que tu necesitas. Yo utilizo la librería rfunc. La puedes encontrar aquí. En ella están las funciones ltrim, rtrim y trim, así como un montón de funciones para trabajar con cadenas, números, nulos, fechas, blobs, etc. Espero haberte ayudado. Saludos. |
Interbase sí incorpora funciones para eso.
En la librería estándar que viene, la ib_udf.dll tienes las siguientes funciones:
|
La franja horaria es GMT +2. Ahora son las 13:03:32. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi