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

Error al añadir campo.

Estas en el tema de Error al añadir campo. en el foro de ASP Clásico en Foros del Web. Cita: 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 ...
  #1 (permalink)  
Antiguo 26/07/2005, 01:08
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 22 años, 5 meses
Puntos: 0
Error al añadir campo.

Cita:
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.

/noticias/comentarios.asp, línea 26
Justo en esa linea, tengo:
mr("TITULO") = txtTit

He mirado, y siempre ocurre que len(txtTit) < 100 , y tengo fijado el campo TITULO como varchar 150. La base de datos es MySQL, y os deoj por aquí el código que empleo, para ver si me podeis echar un cable.

Código:
 strSQL = "SELECT * FROM NEWS_COMMENTS"
  set mr = server.createobject("adodb.recordset")
  mr.open strSQL, myMensConn,2,3
   mr.addnew
   mr("N_ID") = intNew
   mr("AUTOR_ID") = intAutor
   mr("TITULO") = txtTit
   mr("CONT") = txtCont
   mr("DATE") = txtDate
   mr.update
  mr.close
 set mr = nothing
P.D: Me he asegurado ya, y todos los valores que paso son distintos del nulo.
__________________
Tu portal de manga y anime.
  #2 (permalink)  
Antiguo 26/07/2005, 07:36
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Mmmmm... MySQL soporta hacer inserts de esa manera?
__________________
...___...
  #3 (permalink)  
Antiguo 26/07/2005, 16:29
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 22 años, 5 meses
Puntos: 0
Vaya, no había pensado en eso. Entonces lo que tengo que hacer es un "INSERT INTO ..." etc. etc. ¿no?

EDIT: Pero ahora que recuerdo, tengo esas mismas sentencias de inserción en otras páginas, con MySQL y sí me funciona. Raro, raro.
__________________
Tu portal de manga y anime.

Última edición por meru-kun; 26/07/2005 a las 16:38
  #4 (permalink)  
Antiguo 26/07/2005, 23:09
Avatar de trasgukabi  
Fecha de Ingreso: septiembre-2004
Mensajes: 2.749
Antigüedad: 20 años, 8 meses
Puntos: 18
qué mania teneis con hacer los inserts así. Meru-kun, no te das cuenta de lo que puede suponer para el servidor crear un recordset de TODOS los campos de TODOS los registros de la tabla? Imagínate que tienes 20000 registros!!!! pobre servidor!!! y olvídate de que el usuario espere a que se cree el rs. ese ya no vuelve a tu página.
  #5 (permalink)  
Antiguo 27/07/2005, 08:29
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 22 años, 5 meses
Puntos: 0
Desconocía eso que dices, trasgukabi (es lo que tiene ser autodidacta (pero dejar de aprender hace tiempo), que no comprendes bien el funcionamiento de todo).
Muchas gracias por tu comentario, me ha esclarecido muchas cosas. A partir de ahora, lo haré de la otra manera, que como argumentas, es mucho más eficiente.

Un saludo, y gracias.
__________________
Tu portal de manga y anime.
  #6 (permalink)  
Antiguo 27/07/2005, 09:21
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Igualmente, para hacer inserts de esa manera no es necesario traer todos los registros. En vez de...

strSQL = "SELECT * FROM NEWS_COMMENTS"

..podrías poner...

strSQL = "SELECT * FROM NEWS_COMMENTS WHERE 1 = 2"

... ya también podrías insertar el registro.

Bueno, igual no sé si funciona en MySQL.. pero si meru-kun dice que si, pos será que si :D
__________________
...___...
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 12:09.