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

Editar campo MEMO en Accses - ASP

Estas en el tema de Editar campo MEMO en Accses - ASP en el foro de ASP Clásico en Foros del Web. Hola de nuevo, mi problema es el siguiente, tengo una página con un formulario para editar los campos de un registro en una Base de ...
  #1 (permalink)  
Antiguo 22/09/2008, 12:57
 
Fecha de Ingreso: septiembre-2008
Mensajes: 39
Antigüedad: 15 años, 8 meses
Puntos: 0
Editar campo MEMO en Accses - ASP

Hola de nuevo, mi problema es el siguiente, tengo una página con un formulario para editar los campos de un registro en una Base de Datos de Accses, los campos son los siguientes:

Fecha (tipo fecha corta)
Titular (tipo texto)
Noticia (tipo texto)
Memo (tipo memo)

esta página trae los datos de dicho registro con "request.form" por ej.:

Dim fecha,memo,etc...
fecha=request.form("fecha")
memo=request.form("memo")
etc...

y los utiliza para decirle a la secuencia SQL en qué registro se debe realizar el UPDATE, el problema es que cuando se trata del campo memo, todo lo que escribo en el formulario y trato de guardarlo como memo, no resulta, los demás (fecha,titular,noticia) si funcionan, pero este no , este es el código:

---------------------------------------------------------------------------------------
<%
Dim fecha,titular,noticia,memo2,memo
fecha=request.form("fecha")
titular=request.form("titular")
noticia=request.form("noticia")
memo=request.form("memo")
memo2=request.form("memo2")

Dim oconn,objrs,strsql
set oconn=server.createobject("adodb.connection")
set objrs=server.createobject("adodb.recordset")
oConn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("\ddpharma\datos\datos_ddpharma.mdb "))
%>
---------------------------------------------------------------------------------------

<form method="post" action="nueva_memo.asp">
Actual: <%if memo2="" then
response.write(memo)
else
response.write(memo2)
end if
%>
<br>
Nueva Fecha: <input type="text" name="memo2">
<input type="hidden" name="memo" value="<%=memo%>">
<input type="hidden" name="resultado" value="editado">
<input type="submit" value="Guardar"><br><br>
</form>

<%if memo2="" then
else

strSQL = "UPDATE NOTICIAS1 set MEMO='" & memo2 & "' where MEMO= '" & memo & "';"
objrs.Open strSQL, oConn

response.write("se editó con éxito")

end if%>
--------------------------------------------------------------------------------------------

no se me ocurre por qué todavia, aprecio su ayuda mucho, Gracias.
  #2 (permalink)  
Antiguo 22/09/2008, 13:25
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Respuesta: Editar campo MEMO en Accses - ASP

¿Tu campo de comparación es el memo?
O sea, le estás diciendo a tu aplicación, actualizar campos, donde campo memo sea igual a variable memo.

Dos cosas

1. Lógicamente está mal, pues no puedes actualizar en base a algo variable (memo en este caso).
2. En el remoto caso que pudieras comparar con éxito -que el texto no cambiara- es una mala práctica hacer comparaciones de strings cuando puedes utilizar otros valores.

Probable solución:

Necesitas un campo id -numérico de preferencia- para poder identificar tus registros y hacer las operaciones basadas en dicho campo.

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 22/09/2008, 14:03
 
Fecha de Ingreso: septiembre-2008
Mensajes: 39
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Editar campo MEMO en Accses - ASP

Gracias, es mas o menos lo que hice, solo que no lo comparé con el campo id, sinó con los campos "noticia" y "titular", y si funciona perfectamente!

strSQL = "UPDATE NOTICIAS1 set MEMO='" & memo2 & "' where TITULAR= '" & titular & "' and NOTICIA= '" & noticia & "';"
objrs.Open strSQL, oConn
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 00:51.