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

Duda en conexión para UPDate

Estas en el tema de Duda en conexión para UPDate en el foro de ASP Clásico en Foros del Web. Tengo la siguiente conexión ! Cita: Set Conn = Server.CreateObject("ADODB.Connection") Set Obj_Rs = Server.Createobject("ADODB.Recordset") sConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source="& _ Server.MapPath("../../db/usuarios.mdb") & _ ...
  #1 (permalink)  
Antiguo 21/09/2004, 13:00
 
Fecha de Ingreso: mayo-2001
Ubicación: Monterrey, N.L.; México
Mensajes: 558
Antigüedad: 23 años
Puntos: 0
Duda en conexión para UPDate

Tengo la siguiente conexión !

Cita:
Set Conn = Server.CreateObject("ADODB.Connection")
Set Obj_Rs = Server.Createobject("ADODB.Recordset")
sConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source="& _
Server.MapPath("../../db/usuarios.mdb") & _
";" & _
"Persist Security Info=False"
Conn.Open(sConnection)
Obj_RS.Open "usuarios", Conn, 3 , 3
Cómo puedo agregar en este código, la instrucción de UPDATE , pero Indicandole que debe actualizar un registro, dependiendo de un ID tomado de una forma anterior.

Necesito algo, parecido a esto, pero con la funcion de actualizar ( UPDATE ):
Cita:
set oConn=Server.CreateObject("ADODB.Connection")
oConn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../db/usuarios.mdb") & "; Password=bonilla "
SQL="SELECT * FROM " & _
"usuarios where [id] in( " & Request.Cookies("AdminIDCookie")&")"
set rs=oConn.Execute(SQL)
me explico? ...
__________________
Luis Gerardo Soto Bonilla
[email protected]
Monterrey, Nuevo León
México
  #2 (permalink)  
Antiguo 21/09/2004, 13:04
 
Fecha de Ingreso: septiembre-2004
Ubicación: Santiago de Compostela
Mensajes: 103
Antigüedad: 19 años, 8 meses
Puntos: 0
SQL = "UPDATE usuarios SET campo1 = 'valor1', campo2 = 'valor2' WHERE id = " & Request.Cookies("AdminIDCookie")
set rs=oConn.Execute(SQL)

Puede valer?

Aviso: MUCHO OJO CON LA SEGURIDAD
__________________
Fran Castro
Diseño de Paginas Web Descargas Gratis
  #3 (permalink)  
Antiguo 21/09/2004, 13:22
 
Fecha de Ingreso: mayo-2001
Ubicación: Monterrey, N.L.; México
Mensajes: 558
Antigüedad: 23 años
Puntos: 0
Que tal jcastro !

Siguiendo tus instrucciones, mi código de comexión quedo de la siguiente forma:

Cita:
Set Conn = Server.CreateObject("ADODB.Connection")
Set Obj_Rs = Server.Createobject("ADODB.Recordset")
sConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source="& _
Server.MapPath("../../db/usuarios.mdb") & _
";" & _
"Persist Security Info=False"
Conn.Open(sConnection)
Obj_Rs = "UPDATE usuarios SET usuario = 'usuario', password = 'password', nombre = 'nombre', apellidop = 'apellidop', apellidom = 'apellidom', imss = 'imss', email = 'email' WHERE id = " & Request.Cookies("AdminIDCookie")
set rs=Conn.Execute(SQL)
Y me esta enviando este error
Cita:
Microsoft JET Database Engine (0x80040E0C)
No se estableció ningún texto de comando para el objeto de comando.
/web/admin/ModificaDatos/modifOK.asp, line 13
Este error no lo conozco... es la primer vez que lo veo

Saludos y Gracias
__________________
Luis Gerardo Soto Bonilla
[email protected]
Monterrey, Nuevo León
México
  #4 (permalink)  
Antiguo 21/09/2004, 13:27
 
Fecha de Ingreso: septiembre-2004
Ubicación: Santiago de Compostela
Mensajes: 103
Antigüedad: 19 años, 8 meses
Puntos: 0
Obj_Rs = "UPDATE usuarios SET usuario = 'usuario', password = 'password', nombre = 'nombre', apellidop = 'apellidop', apellidom = 'apellidom', imss = 'imss', email = 'email' WHERE id = " & Request.Cookies("AdminIDCookie")
set rs=Conn.Execute(SQL)

Fíjate como la variable se llama Obj_Rs y luego ejecutas SQL
__________________
Fran Castro
Diseño de Paginas Web Descargas Gratis
  #5 (permalink)  
Antiguo 21/09/2004, 13:50
 
Fecha de Ingreso: mayo-2001
Ubicación: Monterrey, N.L.; México
Mensajes: 558
Antigüedad: 23 años
Puntos: 0
Bueno, estoy checando y segun yo, todo esta bien, pero.... Sigo sin comprender este error ....

Intente otro tipo de conexion para actualizar pero no me funcionan.. Busque en las Faqs del Web y tampoco !... bueno, viene uno pero no esta completo, busque aqui en las Faqs de ASP y... no viene esa pregunta/respuesta !

Seguire intentando..

Gracias
__________________
Luis Gerardo Soto Bonilla
[email protected]
Monterrey, Nuevo León
México
  #6 (permalink)  
Antiguo 21/09/2004, 13:52
 
Fecha de Ingreso: septiembre-2004
Ubicación: Santiago de Compostela
Mensajes: 103
Antigüedad: 19 años, 8 meses
Puntos: 0
Has probado lo que te he dicho?

Obj_Rs = "UPDATE usuarios SET usuario = 'usuario', password = 'password', nombre = 'nombre', apellidop = 'apellidop', apellidom = 'apellidom', imss = 'imss', email = 'email' WHERE id = " & Request.Cookies("AdminIDCookie")
set rs=Conn.Execute(Obj_Rs)

Fijate como cambia la linea set rs=Conn.Execute(Obj_Rs), corrige eso en tu codigo
__________________
Fran Castro
Diseño de Paginas Web Descargas Gratis
  #7 (permalink)  
Antiguo 21/09/2004, 15:39
 
Fecha de Ingreso: mayo-2001
Ubicación: Monterrey, N.L.; México
Mensajes: 558
Antigüedad: 23 años
Puntos: 0
Ya intente... el còdigo quedo de esta forma:
Cita:
Set Conn = Server.CreateObject("ADODB.Connection")
Set Obj_Rs = Server.Createobject("ADODB.Recordset")
sConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source="& _
Server.MapPath("../../db/usuarios.mdb") & _
";" & _
"Persist Security Info=False"
Conn.Open(sConnection)
Obj_RS.Open "usuarios", Conn, 3 , 3
Obj_Rs = "UPDATE usuarios SET usuario = 'usuario', password = 'password', nombre = 'nombre', apellidop = 'apellidop', apellidom = 'apellidom', imss = 'imss', email = 'email' WHERE id = " & Request.Cookies("AdminIDCookie")
set rs=Conn.Execute(Obj_Rs)
y Me genera este error
Cita:
Microsoft JET Database Engine (0x80040E14)
Error de sintaxis en la instrucción UPDATE.
/web/admin/ModificaDatos/modifOK.asp, line 30
.. que me pasa !!
__________________
Luis Gerardo Soto Bonilla
[email protected]
Monterrey, Nuevo León
México
  #8 (permalink)  
Antiguo 22/09/2004, 15:23
 
Fecha de Ingreso: mayo-2001
Ubicación: Monterrey, N.L.; México
Mensajes: 558
Antigüedad: 23 años
Puntos: 0
Exclamación Sera posible??... No Puedo con UPDATE !!!

Bueno, creo que no podre realizar esto, y no se ni por donde pueda estar el error. Ya probe con varios tipos de conexión y no me funciona, me marca error en la misma linea siempre...

Ahorita, mi último intento fue generar el siguiente código:
Cita:
<%language="vbscript"%>
<%
dim id
dim usuario
dim password
dim nombre
dim apellidop
dim apellidom
dim imss
dim email

id=request.querystring("id")
usuario=Request.Form("usuario")
password=Request.Form("password")
nombre=Request.Form("nombre")
apellidop=Request.Form("apellidop")
apellidom=Request.Form("apellidom")
imss=Request.Form("imss")
email=Request.Form("email")

set oConn=Server.CreateObject("ADODB.Connection")
oConn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../db/usuarios.mdb") & "; Password=bonilla "
SQL="update * FROM usuarios where id = "& id
set rs=oConn.Execute(SQL)
%>
Y de igual forma me genera el mismo error siempre:
Cita:
Tipo de error:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Controlador ODBC Microsoft Access] Error de sintaxis en la instrucción UPDATE.
/web/admin/ModificaDatos/modifOK.asp, line 24
Aparte, estoy comprobando que si me esta "arrastrando" el valor del ID, que era con el que al principio tenia duda. La prueba esta en que abajo del error, me muestra la siguiente información:
Cita:
Datos de POST:
id=14&usuario=Owen&password=eclbonilla6&nombre=Luis+Ger ardo&apellidop=ZZZoto& apellidom=Bonilla&IMSS=04037812841&email=owenbonil [email protected]&B1=Cambiar+mis+Datos
Alguien que me oriente... ya no se que puedo hacer !!.. siempre es el mismo error !

Saludos y Gracias !
__________________
Luis Gerardo Soto Bonilla
[email protected]
Monterrey, Nuevo León
México
  #9 (permalink)  
Antiguo 22/09/2004, 15:58
 
Fecha de Ingreso: septiembre-2004
Ubicación: Santiago de Compostela
Mensajes: 103
Antigüedad: 19 años, 8 meses
Puntos: 0
la variable id la recoges de la url o del post?

Fijate, tienes escrito ... id=request.querystring("id"), pero a lo mejor sería password=Request.QueryString("password")

Un saludo
__________________
Fran Castro
Diseño de Paginas Web Descargas Gratis
  #10 (permalink)  
Antiguo 22/09/2004, 16:03
 
Fecha de Ingreso: mayo-2001
Ubicación: Monterrey, N.L.; México
Mensajes: 558
Antigüedad: 23 años
Puntos: 0
La variable ya intente recogerla de la URL ( Request.QueryStrin) y del formulario ( Request.Form )... y de las dos formas siempre me manda ese mismo error....

__________________
Luis Gerardo Soto Bonilla
[email protected]
Monterrey, Nuevo León
México
  #11 (permalink)  
Antiguo 22/09/2004, 16:22
 
Fecha de Ingreso: septiembre-2004
Ubicación: Santiago de Compostela
Mensajes: 103
Antigüedad: 19 años, 8 meses
Puntos: 0
La consulta SQL que usas está mal constrida... sería update usuarios set campo1='campo1', campo2 = 'campo2' ... where id = 69

Un saludo.
__________________
Fran Castro
Diseño de Paginas Web Descargas Gratis
  #12 (permalink)  
Antiguo 22/09/2004, 16:44
 
Fecha de Ingreso: mayo-2001
Ubicación: Monterrey, N.L.; México
Mensajes: 558
Antigüedad: 23 años
Puntos: 0
FCASTRO !!!....
Ya me funciono... muchas gracias !!...
Aquí dejo el código para quien tenga el mismo problema, vea de que forma puede Solucionarlo

Esto Funciona para... Actualizar Información, de una Base de Datos, dependiento de una Variable o un ID de una Página Anterior ( metodo POST )

Cita:
<%language="vbscript"%>
<%
dim id
dim usuario
dim password
dim nombre
dim apellidop
dim apellidom
dim imss
dim email

id=Request.Form("id")
usuario=Request.Form("usuario")
password=Request.Form("password")
nombre=Request.Form("nombre")
apellidop=Request.Form("apellidop")
apellidom=Request.Form("apellidom")
imss=Request.Form("imss")
email=Request.Form("email")

set oConn=Server.CreateObject("ADODB.Connection")
oConn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../db/usuarios.mdb") & "; Password=bonilla "
SQL="UPDATE usuarios SET usuario='"&usuario&"', password='"&password&"', nombre='"&nombre&"', apellidop='"&apellidop&"', apellidom='"&apellidom&"', imss='"&imss&"', email='"&email&"' where [id] = "& id
set rs=oConn.Execute(SQL)
%>
Muchas Gracias a Todos de Nuevo !...

Saludos !
__________________
Luis Gerardo Soto Bonilla
[email protected]
Monterrey, Nuevo León
México
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 01:11.