Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Ceros a la izquierda

Estas en el tema de Ceros a la izquierda en el foro de Mysql en Foros del Web. Hola ha todos, Vereis, me ha surgido el siguiente problema. Registrando mis usuarios en la base de datos (MySql 4.1.7), al intentar guardar el codigo ...
  #1 (permalink)  
Antiguo 15/04/2006, 19:08
 
Fecha de Ingreso: enero-2004
Mensajes: 95
Antigüedad: 20 años, 3 meses
Puntos: 1
Ceros a la izquierda

Hola ha todos,

Vereis, me ha surgido el siguiente problema. Registrando mis usuarios en la base de datos (MySql 4.1.7), al intentar guardar el codigo postal, si este empieza por cero (por ejemplo 06011) me lo guarda quetandole en cero de delante (6011).

Aunque el campo es de tipo varchar(10), se empeña en reconocerlo como número y quitarle el cero. Para que me lo guarde correctamente he tenido que recurrir a añadirle un caracter al final para que me lo reconozca como char (06011-). Pero no me parece una solución muy elegante.

¿Alguien sabe como puedo solucionar esto?

Gracias
__________________
Guarda tus configuration files
  #2 (permalink)  
Antiguo 16/04/2006, 01:09
Avatar de uamistad  
Fecha de Ingreso: diciembre-2004
Ubicación: Cd. de México
Mensajes: 1.395
Antigüedad: 19 años, 4 meses
Puntos: 1
Esa es fácil, tienes que usar un campo entero y de tamaño 5 marcado como ZEROFILL, ej.

Código:
//
CREATE TABLE `pruebas` (                                          
           `id` INT NOT NULL auto_increment,                           
           `codigopostal` INT(5) unsigned zerofill default NULL,           
           PRIMARY KEY  (`id`)                                             
         ) ENGINE=MyISAM
Al marcarlo como zerofill, te llenará con ceros los valores de la izquierda hasta completar el campo, que como especificas, es de tamaño 5.
__________________
"Di no al Internet Explorer" -Proverbio Chino-
  #3 (permalink)  
Antiguo 16/04/2006, 20:06
 
Fecha de Ingreso: enero-2004
Mensajes: 95
Antigüedad: 20 años, 3 meses
Puntos: 1
Muchas gracias por tu respuesta uamistad. Pero me queda una duda ¿Todos los codigos postales de todos los paises tienen 5 digitos?
__________________
Guarda tus configuration files
  #4 (permalink)  
Antiguo 16/04/2006, 20:38
Avatar de uamistad  
Fecha de Ingreso: diciembre-2004
Ubicación: Cd. de México
Mensajes: 1.395
Antigüedad: 19 años, 4 meses
Puntos: 1
Qué onda man. Pues la primer pregunta estaba fácil, esta sí está dificil. Pa' saber ta' cañón. Debe haber países tan pequeños que 5 dígitos para denominar una zona postal quizá sean demasiados.

Pero no deberías preocuparte por eso, creo yo. A menos que tengas una base de datos de códigos postales y quisieras relacionarlos o algo a´si, de otro modo es como preguntar un simple nombre o un email. Ponele un CHAR(10) para el código postal y que pongan lo que deseen.

=)
__________________
"Di no al Internet Explorer" -Proverbio Chino-
  #5 (permalink)  
Antiguo 17/04/2006, 00:03
 
Fecha de Ingreso: enero-2004
Mensajes: 95
Antigüedad: 20 años, 3 meses
Puntos: 1
Pues tambien tienes razon. Qué ganas de complicarme la vida con un dato que seguramente no use
__________________
Guarda tus configuration files
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:52.