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

Problema con ASP yAccess 2003

Estas en el tema de Problema con ASP yAccess 2003 en el foro de ASP Clásico en Foros del Web. Tengo un problema con access 2003 con asp.. resulta que haciendo un ejercicio basico de asp que consiste en mandar informacion de un fomulario .. ...
  #1 (permalink)  
Antiguo 10/10/2005, 09:43
 
Fecha de Ingreso: enero-2004
Ubicación: Cordoba
Mensajes: 72
Antigüedad: 21 años, 3 meses
Puntos: 0
Problema con ASP yAccess 2003

Tengo un problema con access 2003 con asp..
resulta que haciendo un ejercicio basico de asp que consiste en mandar informacion de un fomulario .. recuperarla en otro asp.. y en este conectar a la base de datos en access 2003 ,me indica que tengo un error de sintaxis en INSERT INTO.. no entiendo por que ya que el codigo mehabia funcionado muy bien en access 2003.. y probablemente cambiando de access o bien trabajando con sql server funcione.. pero entonces cual seria la solucion para este problema.. mi codigo se que esta bien por que lo he visto funcionar.. lo pongo a continuacion pues igual y tiene error y no lo he visualizado.

<%
vname=request.form("name")
vage=request.Form("age")
vhob=request.form("hob")

strProvider = "Driver={Microsoft Access Driver
(*.mdb)};DBQ=C:\InetPub\wwwroot\aspS\bd1.mdb;"

Set objConn = server.createobject("ADODB.Connection")
objConn.Open strProvider


'En esta linea marca el error
strCommand = " insert into general(nombre,edad,hobbie)
values ('"& vname &"','"& vage &"','"& vhob &"')"

objConn.Execute strCommand
objConn.Close
set objConn = nothing
response.Write("Informacion capturada correctamente")

%>


Lo que obtengo por salida es lo siguiente:

Tipo de error:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Controlador ODBC Microsoft Access] Error de sintaxis en la instrucción INSERT INTO.
/asps/recepcion.asp, línea 29

Espero que alguien pueda ayudarme. Agradezco de antemano.


atte: BuckInc
  #2 (permalink)  
Antiguo 10/10/2005, 10:12
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
luego de...

strCommand = " insert into general(nombre,edad,hobbie)
values ('"& vname &"','"& vage &"','"& vhob &"')"

colocá:

response.write strCommand : response.end

... y verificá el resultado de la sentencia
__________________
...___...
  #3 (permalink)  
Antiguo 10/10/2005, 10:26
 
Fecha de Ingreso: enero-2004
Ubicación: Cordoba
Mensajes: 72
Antigüedad: 21 años, 3 meses
Puntos: 0
No me despliega ningun error.. me muestra la informacion que escribi en el formulario que envia.. mostrandome toda la linea..

insert into general(nombre,edad,hobbie) values ('maus','24','aminobwana')

esta raro.. nunca me habia pasado.. estoy trabajando con el dreamweaver 8, IIS5.1, access 2003 y asp.. tengo el WinXP SP2.. no tengo idea a que se deba. Ojala puedas guiarme a encontrar una solucion. Gracias
  #4 (permalink)  
Antiguo 10/10/2005, 11:53
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 23 años, 4 meses
Puntos: 16
y si quitas las comillas de vage? no es un campo numerico?

por cierto, si usas DW 8, 7 o 5, es lo mismo
  #5 (permalink)  
Antiguo 10/10/2005, 12:14
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
Cita:
Iniciado por sjam7
y si quitas las comillas de vage? no es un campo numerico?
sabés que llegué a pensar lo mismo, pero el mensaje de error hubiese sido "no coinciden los tipos de datos..." (o similar, no lo recuerdo ahora )

estará usando alguna palabra reservada?
__________________
...___...
  #6 (permalink)  
Antiguo 10/10/2005, 12:15
 
Fecha de Ingreso: enero-2004
Ubicación: Cordoba
Mensajes: 72
Antigüedad: 21 años, 3 meses
Puntos: 0
no mi estimado.. aun no funciona.. pienso que tiene que ver con el access2003.. ya ue con el 2000 estas mismas lineas de codigo funcionaban sin problema alguno.. y bueno ni hablar.. no lo entiendo.. lo que pienso hacer si no encuentro respuesta a este problema es trabajar con sql server o bien con mysql.. haber cual se adapta mejor.. de todas formas seguire intentando y pendiente de las respuestas en este mensaje.. igual y alguien sabe el por que.. Gracias.
  #7 (permalink)  
Antiguo 10/10/2005, 12:16
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
Mmmm... parece que si:

http://www.aspfaq.com/show.asp?id=2080

según dice allí, "general" es una palabra reservada!
Dejá tu sentencia así:

strCommand = "insert into [general] (nombre,edad,hobbie)
values ('"& vname &"','"& vage &"','"& vhob &"')"

O de plano, cambiale el nombre a la tabla 'general'
__________________
...___...
  #8 (permalink)  
Antiguo 10/10/2005, 12:45
 
Fecha de Ingreso: enero-2004
Ubicación: Cordoba
Mensajes: 72
Antigüedad: 21 años, 3 meses
Puntos: 0
Tras poner la sentencia strCommand = "insert into [general] (nombre,edad,hobbie)
values ('"& vname &"','"& vage &"','"& vhob &"')"

Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][Controlador ODBC Microsoft Access] La operación debe usar una consulta actualizable.
/asps/recepcion.asp, línea 30.

que seria la linea donde se encuentra el:
objConn.Execute strCommand

e incluso cambiando el nombre de la tabla.. pero bueno ahora al menos me dice que debe ser una consulta actualizable.. agradezco cualquier sugerencia o comentario.
  #9 (permalink)  
Antiguo 11/10/2005, 09:30
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
Ese error se ha tratado miles de veces en el foro. Te invito a que busques la descripción del error usando el buscador de forosdelweb.com o que hagas lo que hice ayer para detectar que era un problema de "palabra reservada": que entres a www.aspfaq.com y busques el número del nuevo error (0x80004005)

Saludos
__________________
...___...
  #10 (permalink)  
Antiguo 11/10/2005, 09:57
 
Fecha de Ingreso: enero-2004
Ubicación: Cordoba
Mensajes: 72
Antigüedad: 21 años, 3 meses
Puntos: 0
Ok dato anotado.. muchas gracias por tu respuesta, checare en el foro como lo sugieres.. y checare la direccion de la pagina que me envias.
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:26.