Foros del Web » Programando para Internet » ASP Clásico »

Error al leer un campo longtext de Mysql

Estas en el tema de Error al leer un campo longtext de Mysql en el foro de ASP Clásico en Foros del Web. Buenas tardes. Estoy desarrollando un web en ASP (VbScript) - MySQL El problema lo tengo en que la tabla donde almaceno los datos, tengo dos ...
  #1 (permalink)  
Antiguo 22/09/2005, 09:21
 
Fecha de Ingreso: diciembre-2003
Mensajes: 141
Antigüedad: 21 años, 4 meses
Puntos: 0
Error al leer un campo longtext de Mysql

Buenas tardes.

Estoy desarrollando un web en ASP (VbScript) - MySQL

El problema lo tengo en que la tabla donde almaceno los datos, tengo dos campos "longtext" (MEMO en MySQL), en los cuales NO requiero la introducción de información.

Tengo un formulario que inserta correctamente los datos, pero luego al querer editarlos(cargar los valores en un formulario) o leerlos (simplemente listarlos), me da el siguiente error:

Código:
Microsoft OLE DB Provider for ODBC Drivers error '80040e21' 

La operación de múltiples pasos de OLE DB generó errores. Compruebe los valores de estado de OLE DB si es posible. No se realizó ningún trabajo.
He podido observar que el problema existe solo cuando en este campo no se "almacena" ningún valor.

Me pueden hechar una mano?
Gracias!
  #2 (permalink)  
Antiguo 22/09/2005, 09:35
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Bueno, ese error en Delphi era por el driver de MyODBC que no estaba actualizado.

Aquí podría ser por eso mismo. Otra cosa es que en el insert coloques un Null de forma explícita al campo cuando no necesites llenarlo, pero al menos ya no estará vacio.

Saludos
  #3 (permalink)  
Antiguo 22/09/2005, 10:58
 
Fecha de Ingreso: diciembre-2003
Mensajes: 141
Antigüedad: 21 años, 4 meses
Puntos: 0
Hola Myakire, muchas gracias por tu respuesta.

En un principio utilizo MySQL ODBC 3.51, que creo que es la última versión...
Al editar la conexión desde el administrador ODBC, puedo observar que también hay unos parámetros avanzados de configuración, donde me llaman la atención "Don't optimize column Withd" y "Return Matching Rows". También he activado estas casillas, pero nada.

En algun lado he leido que se debe activar la casilla "Allow Big Results", para no tener problemas con campos de tipo TEXT (Memo)... pero no funciona

Es curioso que al cambiarlo como tipo "varchar" o "char", si hago el insert sin ningún valor pasado por el request.form, no da ningún tipo de problema. Solamente pasa con los "type MEMO" de MySQL...

Por lo del insert, lo he modificado y funciona correctamente. Más o menos:

Código:
If Request.Form("equipo") = "" then
    equipo = "null"
Else
    equipo = "'" & Request.Form("equipo") & "'"
End if

sql = "Insert Into tabla (Nombre, Equipo) Values (" & Request.Form("Nombre") & ", & equipo & ")"
Seguiré investigando para ver si puedo dejarlo "en condiciones normales"

Saludos!!!
  #4 (permalink)  
Antiguo 22/09/2005, 16:46
 
Fecha de Ingreso: diciembre-2003
Mensajes: 141
Antigüedad: 21 años, 4 meses
Puntos: 0
Bueno, después de leer y releer... encontré la solución (y simple, por cierto)

Parece ser que es un "bug" del Mysql connector odbc. Para solucionar este problema, debes instalar la última versión de MDAC (el actual es el 2.8) de Microsoft.

Ahora puedo trabajar perfectamente con campos MEMO (Text, Blob, longtext, etc...)
También creo que este problema afecta a conexiones odbc de MSSQL.

Saludos y gracias por todo.

P.D. Espero que le sirva también a los demás ;)
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 10:05.