Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-12-2010
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 523
Poder: 21
IVAND Va por buen camino
IBX y campos char

Hola a todos

Tengo una pequena duda , estoy utilizando delphi 6 y los componentes IBx (creo q es la ultima version , pues ya no los encuentro por ninguna parte , si alguien conoce donde bajar una version actualizada me los dicen aunq sea de pago)

Veran , cuando quiero modificar un campo q contiene 40 caracteres y si la cantidad de caracteres es menor los demas campos se llenan de espacios en blanco causando mucha molestia al usuario final , ya probe utilizando los Fibplus y funcionan de maravilla , lastimosamente todo mi proyecto esta echo con los IBx asi q es dificil o casi imposible cambiarlos (me han funcionado bien hasta ahora q nace este pedido de un cliente )

Si me pudieran dar una idea se los agradeceria, de corazon muchas gracias
__________________
IVAND
Responder Con Cita
  #2  
Antiguo 06-12-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.039
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Seguramente tienes un campo char(40), cámbialo a varchar(40), ya que el varchar elimina los espacios que sobran.
Te aconsejo que lo hagas así:
  1. creas el campo varchar(40)
  2. pasas los catos del campo char(40) al nuevo campo varchar(40)
  3. borras el campo char(40)
  4. renombras el campo varchar(40) con el nombre que tenía el char(40)
Responder Con Cita
  #3  
Antiguo 06-12-2010
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Pero es que así funcionan los campos de tipo "char", y para ello fueron construidos. Si no es lo que quieres usa varchar. De hecho, los espacios no se guardan en la base de datos, sino que los IBX los inserta al vuelo cuando lee de la BBDD y los muestra en los controles DBEdits por ejemplo.

Lo que quiero decir es que modificando todos los campos de char a varchar(100) por ejemplo, no debería modificar para nada los datos. Los campos persistentes, espero no los uses mucho porque sí hace falta cambiarlos.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
Antiguo 06-12-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Seguramente tienes un campo char(40), cámbialo a varchar(40), ya que el varchar elimina los espacios que sobran.
Te aconsejo que lo hagas así:
  1. creas el campo varchar(40)
  2. pasas los catos del campo char(40) al nuevo campo varchar(40)
  3. borras el campo char(40)
  4. renombras el campo varchar(40) con el nombre que tenía el char(40)
Hola Casimiro.

Te hago una consulta:

Habiendo datos en la tabla, ¿es más seguro o conveniente utilizar esos pasos que la sentencia
Código SQL [-]
ALTER TABLE tabla ALTER COLUMN columna TYPE nuevo_tipo
en forma directa ?


Un saludo.

Última edición por ecfisa fecha: 06-12-2010 a las 20:39:07.
Responder Con Cita
  #5  
Antiguo 06-12-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.039
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Puede que te funcione como dices, pero no sé si se quedarán guardados los espacios. Yo lo haría como te he puesto, mejor dicho, yo no lo haría así tampoco. En mi caso siempre uso "dominios" para declarar los tipos de los campos, así que tan sólo tendría que cambiarle el dominio al campo.
Responder Con Cita
  #6  
Antiguo 06-12-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola de nuevo Casimiro.

Te pregunté por que no hace tanto que empecé con Firebird y esos detalles son los que no se leen en ningún lado.
Y ya que tengo un experto a mano... aprovecho el consejo.

Gracias por la respuesta.


Un saludo.

Última edición por ecfisa fecha: 06-12-2010 a las 22:55:53.
Responder Con Cita
  #7  
Antiguo 07-12-2010
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 523
Poder: 21
IVAND Va por buen camino
Gracias por responder

Una pregunta , si cambio el tipo de dominio no deberia tener algun problema ?
si en un Sp tengo definido una variable de tipo char(40) y la inserto en la tabla con el campo varchar(40) no deberia tener algun problema ?

Y si amigos el problema de llenar los campos en blancos es de IBx

Nota: He simplemente editado el dominio y listo ... La base de datos podria corromporse de alguna forma al realizar esta maniobra ?
__________________
IVAND

Última edición por IVAND fecha: 07-12-2010 a las 00:55:43.
Responder Con Cita
  #8  
Antiguo 07-12-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.039
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
En principio no deberías tener ningún problema, aunque tampoco conozco la base de datos que estás usando
Responder Con Cita
  #9  
Antiguo 07-12-2010
rrf rrf is offline
Miembro
 
Registrado: ago 2003
Ubicación: S/C Tenerife, España
Posts: 454
Poder: 21
rrf Va por buen camino
Wink

Cita:
Empezado por IVAND Ver Mensaje
Tengo una pequena duda , estoy utilizando delphi 6 y los componentes IBx (creo q es la ultima version , pues ya no los encuentro por ninguna parte , si alguien conoce donde bajar una version actualizada me los dicen aunq sea de pago)
Como no especificas la versión de IBX que usas, no se si te servirá: ESTA PÁGINA PARECE QUE TIENE LAS ÚLTIMAS VERSIONES DE IBX para diferentes versiones de Delphi.

Tienes que estar registrado en Embarcadero para que te permitan descargar el archivo. Es gratis.

Saludos.
Responder Con Cita
  #10  
Antiguo 07-12-2010
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 523
Poder: 21
IVAND Va por buen camino
Hola Nuevamente


Disculpen , la base q uso es firebird 1.5 , y no se como ver la ultima version de los IBX si alguien fuera tan amable y me lo indica

Un abrazo a todos a la distancia
__________________
IVAND
Responder Con Cita
  #11  
Antiguo 07-12-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.039
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por IVAND Ver Mensaje
Hola Nuevamente
Disculpen , la base q uso es firebird 1.5 , y no se como ver la ultima version de los IBX si alguien fuera tan amable y me lo indica
Un abrazo a todos a la distancia

Botón derecho en cualquier componente que tengas en algún formulario, sale un menú indicando la versión.
Responder Con Cita
  #12  
Antiguo 07-12-2010
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 523
Poder: 21
IVAND Va por buen camino
Pues lo unico que sale es Interbaseexpress 6

Imagino que esa es la version
__________________
IVAND
Responder Con Cita
  #13  
Antiguo 07-12-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.039
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Aquí tienes un ejemplo, en este caso la 4.51:

Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
campos char o varchar postgres se ven como Blobtype=ftMemo andresenlared PostgreSQL 10 25-01-2008 21:46:40
Espacios extras en campos CHAR morta71 Firebird e Interbase 2 29-11-2006 21:27:28
Largo devuelto por campos Char en Interbase 6.0 senpiterno Conexión con bases de datos 3 08-11-2004 23:19:29
Problema con tamaño en campos CHAR al modificarlos Ignacio Varios 1 08-11-2004 21:13:21
Quitar espacios de campos CHAR cartmanrules Firebird e Interbase 3 22-07-2004 10:53:06


La franja horaria es GMT +2. Ahora son las 09:20:38.


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
Copyright 1996-2007 Club Delphi