Una Ayudita con un campo largo
Hola Foro:
Tengo un problemilla, necesito seleccionar el campo nombre de la tabla de clientes, pero este campo debe tener un largo fijo de 30 caracteres. Entonces hago: select cast(customer_name as char(30)) from customer El problema es que en la tabla, el campo está definido como Varchar(50) y cuando el nobre tiene más de 30 caracteres me larga un error. :confused: Estoy Usando Interbase 1.0 open Sourse. Desde ya agradesco vuestra atención. Saludos. Carmelo Ganduglia. |
Traete el campo con 50 caracteres sin hacer el cast.
Doble clic a tu consulta, add all fields, y despues al campo Cliente le pones DisplayWidth a 30 en el inspector de objetos, si quieres usar MaxLength, también puedes limitarlo. Ya sabes, a problemas dificiles, soluciones fáciles ;). saludos |
Aclarando
Perdón, creo que hice muy confuso el planteo.
En concreto ¿cómo puedo hacer para mostrar los 3 primeros caracteres de un campo? select 'PEPE' from master muestra 'pepe' y quiero ver 'pep' Gracias |
No se si firebird tenga las mismas UDF que interbase, si es así, agrega la UDF SubStr a tu base de datos.
Una vez agregada, puedes usarla de esta forma:
Saludos... |
Graciar pero...
Gracias, pero Interbase no tiene la función substr()
|
Cita:
Lee en la ayuda de Interbase todo lo referente a las UDF. |
Cita:
|
Despues de 7 mensajes, la pregunta creo que es ¿Qué pretendes hacer?
La verdad no encuentro el sentido de traer 3 letras nada más del servidor; si dices lo que pretendes, quizás haya otra forma más fácil. saludos |
Gacias
Listo, se pudo resolver utilizando la función substr('pepe',1,3)
Gracias por su ayuda |
La franja horaria es GMT +2. Ahora son las 05:24:49. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi