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

Recuperar y editar campos en una base de datos

Estas en el tema de Recuperar y editar campos en una base de datos en el foro de ASP Clásico en Foros del Web. Estimados amigos: Estoy intentando recuperar datos de un registro de una base de datos, ubicarlo en un formulario para poder editarlo y actualizarlo, pero necesito ...
  #1 (permalink)  
Antiguo 28/12/2004, 09:13
Avatar de armandoweb  
Fecha de Ingreso: enero-2003
Ubicación: San Cristobal, Santa Fe, Argentina
Mensajes: 544
Antigüedad: 22 años, 3 meses
Puntos: 7
Recuperar y editar campos en una base de datos

Estimados amigos:

Estoy intentando recuperar datos de un registro de una base de datos, ubicarlo en un formulario para poder editarlo y actualizarlo, pero necesito ayuda de como hacerlo. También podría servirme algún código de ejemplo o tutorial.
Desde ya gracias y espero sus posibles respuestas.
Gracias por anticipado.
Ariel.
__________________
www.awdesarrollos.com.ar - [twitter: @armandoweb] - [Skype: awdesarrollos"]

Última edición por armandoweb; 28/12/2004 a las 09:20
  #2 (permalink)  
Antiguo 28/12/2004, 09:27
Avatar de Prefontaine  
Fecha de Ingreso: agosto-2004
Mensajes: 313
Antigüedad: 20 años, 8 meses
Puntos: 0
Aqué encontráras algunas utilidades www.asptutor.com

Un saludo
  #3 (permalink)  
Antiguo 28/12/2004, 09:49
Avatar de TurKa  
Fecha de Ingreso: enero-2003
Ubicación: Gerli, Avellaneda
Mensajes: 543
Antigüedad: 22 años, 3 meses
Puntos: 4
Lo primero que debes hacer es realizar una consulta a la base de datos:

<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=C:\Inetpub\DB\basededatos.mdb")

SQL = "SELECT campo1,campo2 FROM tabla Where IdentificadorDeRegistro ="&numeroIdentificadorDeRegistro
Set RS = CreateObject("ADODB.Recordset")
RS.Open SQL,Conn
%>


IdentificadorDeRegistro se refiere a un campo del registro que NO PUEDA SER EDITADO y que SEA ÚNICO (es decir que no repita en otro registro). Por ejemplo, puede ser un valor numérico de un campo autoincremental.
numeroIdentificadorDeRegistro será el valor numérico que corresponda al registro. Por ejemplo 1

El siguiente paso es crear el formulario insertando los datos recogidos:

<FORM METHOD=post ACTION=editar.asp>
<INPUT TYPE=hidden name=IdentificadorDeRegistro VALUE=numeroIdentificadorDeRegistro>
Campo1: <INPUT TYPE=text NAME=campo1 VALUE="<%=rs("campo1")%>"><br>
Campo2: <INPUT TYPE=text NAME=campo2 VALUE="<%=rs("campo2")%>"><br>
<INPUT TYPE=submit VALUE=Enviar>
</FORM>


Luego cierras los objetos y los vacías:

<%
RS.Close
Set RS = Nothing
Conn.Close
Set Conn = Nothing
%>


Una vez hecho esto, tendrás que crear una página llamada editar.asp para actualizar los datos. La página podrá tener este código:

<%
Const adLockOptimistic = 3
Const adOpenKeyset = 1

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=C:\Inetpub\DB\basededatos.mdb")

SQL = "SELECT campo1,campo2 FROM tabla Where IdentificadorDeRegistro ="&Request.Form("numeroIdentificadorDeRegistro" )
Set RS = CreateObject("ADODB.Recordset")
RS.CursorType = adOpenKeyset
RS.LockType = adLockOptimistic
RS.Open SQL,Conn

If NOT RS.Eof Then
'si el registro existe actualiza los campos
RS("campo1") = Request.Form("campo1")
RS("campo2") = Request.Form("campo2")
RS.Update
Response.Write "El registro ha sido actualizado"

Else
'si el registro no existe lo informa
Response.Write "El registro no existe"
End If

RS.Close
Set RS = Nothing
Conn.Close
Set Conn = Nothing
%>


Con eso ya tienes para empezar. Luego mira ASPTutor.com que tiene muchísima información y muy buena. Sino, visitas www.desarrolloweb.com/asp

Saludos!!!!
__________________
Programación LAMP con Scrum y XP
www.eugeniabahit.com.com.ar
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 08:12.