Ver Mensaje Individual
  #6 (permalink)  
Antiguo 09/06/2010, 13:58
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: 16 años, 5 meses
Puntos: 2658
Respuesta: VB problema al guardar un MEDIUMTEXT en un dataset desde MySQL

Ahora si se entiende.
La pregunta esencia sería saber cuál es la longitud máxima esperada para ese dato. Pero si quieres guardar más de 255, y eventualmente puedes usar hasta 65535, correspondería TEXT.

El espacio de cada tipo sería:
TINYTEXT = 255
TEXT = 65.535
MEDIUMTEXT = 16777216
LONGTEXT = 4294967296

En teoría, si usas MySQL Server 5.0.3 o superior, el VARCHAR se peude definir como de una longitud de gasta 65.535 caracteres.
Esto, por ejemplo, está creado sobre MySQL Server 5.0.67, usando MySQL Query Browser:
Código MySQL:
Ver original
  1. DROP TABLE IF EXISTS `test`.`prueba`;
  2. CREATE TABLE  `test`.`prueba` (
  3.   `ID` int(10) unsigned default NULL,
  4.   `TEXTO` varchar(2000) default NULL
Y esto lo que le cargué:
Código MySQL:
Ver original
  1. insert into test.prueba values(1, '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789');
  2.  
  3. SELECT length(trim(texto)) FROM test.prueba p;
  4. +---------------------+
  5. | length(trim(texto)) |
  6. +---------------------+
  7. |                1200 |
  8. +---------------------+
  9. 1 row in set (0.00 sec)
Por lo que debería poder funcionar, en tanto le indiques el tamaño requerido y la versión sea correcta.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)