Ver Mensaje Individual
  #15 (permalink)  
Antiguo 30/11/2010, 09:43
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Problema al permitir espacios en blanco

Bien. Finalmente tomé el toro por las astas y me puse a hacer una prueba paso a paso de tu problema:

1) Descargué e instalé el MySQL 5.1.53-community, es decir, la última versión disponible.

2) Cree una tabla con un sólo campo de tipo VARCHAR(100). Má sno hacía falta para la prueba.
Código MySQL:
Ver original
  1. CREATE TABLE test.tabla(id VARCHAR(100));
3) Inserté un registro de 11 caracteres, el último de los cuales era un espacio en blanco:
Código MySQL:
Ver original
  1. mysql> INSERT INTO TEST.TABLA VALUES('0123456789 ');
  2. Query OK, 1 row affected (0.00 sec)
  3.  
  4. mysql> SELECT * FROM TEST.TABLA;
  5. +-------------+
  6. | id          |
  7. +-------------+
  8. | 0123456789  |
  9. +-------------+
  10. 1 row in set (0.00 sec)
4) verifiqué la longitud del contenido del campo, obteniendo los 11 caracteres que indiqué:
Código MySQL:
Ver original
  1. mysql> SELECT LENGTH(ID) id  FROM TEST.TABLA;
  2. +------+
  3. | id   |
  4. +------+
  5. |   11 |
  6. +------+
  7. 1 row in set (0.00 sec)
5) Realicé una segunda verificación, esta vez indicando que se eliminasen los espacios adelate o arás del texto que exista en el campo, dando como resultado un valor menor y como conclusión que el espacio en blanco efectivamente se almacenó:
Código MySQL:
Ver original
  1. mysql> SELECT LENGTH(TRIM(ID)) id  FROM TEST.TABLA;
  2. +------+
  3. | id   |
  4. +------+
  5. |   10 |
  6. +------+
  7. 1 row in set (0.00 sec)

Conclusiones a primera instancia:
1) Si en tu caso el campo no puede ser recuperado con el espacio en blanco incluido, ese espacio no se halla almacenado en la tabla.
2) Es altamente probable que alguno de los pasos anteriores o posteriores al almacenamiento esté descartando el espacio, ya que incluso en la versión más actualizada (y pese a lo que dice en el manual de referencia), MySQL no elimina ese espacio.

¿Dudas?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)