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

Problema de sintaxis

Estas en el tema de Problema de sintaxis en el foro de ASP Clásico en Foros del Web. Hola, tengo un libro de visitas en una pagina y cuando quiero ingresar un mensaje en el mismo me tira el siguiente error: Microsoft OLE ...
  #1 (permalink)  
Antiguo 20/12/2004, 11:25
 
Fecha de Ingreso: abril-2003
Ubicación: Parque Chacabuco
Mensajes: 22
Antigüedad: 22 años
Puntos: 0
Problema de sintaxis

Hola, tengo un libro de visitas en una pagina y cuando quiero ingresar un mensaje en el mismo me tira el siguiente error:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access Driver]Error in row
/foro/addmensaje.asp, line 52

les paso el script

<%
Const adOpenForwardOnly = 0
Const adOpenKeyset = 1
Const adOpenDynamic = 2
Const adOpenStatic = 3
Const adLockReadOnly = 1
Const adLockPessimistic = 2
Const adLockOptimistic = 3
Const adLockBatchOptimistic = 4

Nombre = request.form("Nombre")
Pais = request.form("Pais")
Email = request.form("Email")
url = request.form("url")
Asunto = request.form("Asunto")
Mensaje = replace(request.form("Mensaje"),chr(10),"<br>")

'en caso que el campo url tenga como único valor el valor por defecto
'se convierte a valor nulo
if url="http://" then
url = ""
end if

if Nombre="" or email="" or Asunto="" or Mensaje="" then
response.redirect "firmarlibro.asp?Mensaje=2"

else
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.MapPath("libvis.mdb"))
set rs=createobject("ADODB.Recordset")
rs.CursorType = adOpenKeyset
rs.LockType = adLockOptimistic

rs.open "mensajes",conn
rs.addnew

rs("Nombre")=Nombre
rs("email")=Email
rs("Pais")=Pais
rs("url")=url
rs("Asunto")=Asunto
rs("Mensaje")=Mensaje
rs("Fecha")=Date()
rs.Update
rs.Close
response.redirect "default.asp"
end if
%>
la linea en cuestion que me pasa como error es rs.Update,

alguien tiene una idea de por que puede pasar esto, yo ya me queme el bocho buscando por todos lados una soluciòn, soy muy principiante en asp, asi que bueh. les pregunto a los que saben, un abrazo
__________________
Demian Dorado
  #2 (permalink)  
Antiguo 20/12/2004, 14:50
 
Fecha de Ingreso: noviembre-2004
Ubicación: trelew - chubut
Mensajes: 134
Antigüedad: 20 años, 5 meses
Puntos: 0
fijate si no se da algunos de estos casos:

The problem is with the table itself and how the columns are defined. You
will get an "Error in Row" error anytime the following situations occur:

1. Any text column is blank. When you define a column in Access, the
default value for "allow zero length" is No (which IMHO is totally stupid)
which means the column must have data. I always have to change this
to "Yes". Too bad Microsoft won't say "column can't have zero length".

2. Any time the data for a text column is too long. If you define a
FirstName column as 20 characters and you try to stuff in a 30-character
name, you will get this error. Too bad Microsoft won't say "data string
too long for this column".

3. Any time a column has indexing set to "Yes (No Duplicates)". This might
be the problem you are having with the long integer column, especially if
this column is a foreign key to another table that uses an AutoNumber
column as it's primary key. Too bad Microsoft won't say "duplicte entry
for this column".

If you are not familiar with how all the columns are defined, this "Error
in row" message will drive you bonkers.

espero te sirva
  #3 (permalink)  
Antiguo 20/12/2004, 15:57
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 22 años, 2 meses
Puntos: 1
Fijate si todas las variables que usas para llenar los campos tienen algun valor, porque si es null no te va funcionar.
Podes probar poniéndole valores manualmente para ver si funciona correctamente.

Saludos.
  #4 (permalink)  
Antiguo 21/12/2004, 10:16
 
Fecha de Ingreso: abril-2003
Ubicación: Parque Chacabuco
Mensajes: 22
Antigüedad: 22 años
Puntos: 0
Diez mil gracias

Como dije, son unos campiones, ahora funca todo biento en popa, a flacoluis: mi dont understand un pomo en inglish, pero igual dio pra entender, chas gracias
pmp, uste es un grande,
gracias y espero aprender mas, asi yo tambien puedo ayudar a otros
__________________
Demian Dorado
  #5 (permalink)  
Antiguo 21/12/2004, 15:10
 
Fecha de Ingreso: noviembre-2004
Ubicación: trelew - chubut
Mensajes: 134
Antigüedad: 20 años, 5 meses
Puntos: 0
de nada

aparte de aprender ASP tambien dale un poco a las
publicaciones tecnicas en ingles
que va a llegar un momento que
te va a ser muy util
  #6 (permalink)  
Antiguo 22/12/2004, 12:25
 
Fecha de Ingreso: abril-2003
Ubicación: Parque Chacabuco
Mensajes: 22
Antigüedad: 22 años
Puntos: 0
OK, Thk you
__________________
Demian Dorado
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 14:33.