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

Problemas con UPDATE

Estas en el tema de Problemas con UPDATE en el foro de ASP Clásico en Foros del Web. Hola a todos. La función "update" no me da ningún error, pero no actualiza los registros que debería. Adjunto el código fuente de la página ...
  #1 (permalink)  
Antiguo 29/08/2003, 11:54
 
Fecha de Ingreso: mayo-2003
Mensajes: 17
Antigüedad: 21 años, 11 meses
Puntos: 0
Problemas con UPDATE

Hola a todos.

La función "update" no me da ningún error, pero no actualiza los registros que debería.

Adjunto el código fuente de la página que no finciona como debería.

<html>
<head>
<title>afegir albarà</title>
</head>
<body>
<p><font size="3" face="Arial, Helvetica, sans-serif">Data inicial: <%=request.form("data1")%><br>
Data final: <%=request.form("data2")%><br>
Client: <%=request.form("client")%><br>
Núm. factura: <%=request.form("factura")%><br>
<%
On Error Resume Next
Set Conn = CreateObject("ADODB.Connection")
Conn.Open "final"
conn.begintrans

sSQL = "update albara set factura=" & request("factura") & " where client=" & request("client") & " and data between " & request("data1") & " and " & request("data2") & ""

Set RS=Conn.Execute(sSQL)

If Err.Description <> "" then
Response.Write "<B>Error en BBDD: " & Err.Description & "</B>"
Else
Response.Write "<B></B>"
End If
%>
<%
conn.close
conn.committrans
%>
</font></p>
<p><font size="3" face="Arial, Helvetica, sans-serif"><a href="http://localhost/final/factura2.html">Afegir un altre
albarà</a></font></p>
</body>
</html>

No sé si el problema se da cuando comparo las fechas o por otras causas. Según el intervalo de fechas y el número de cliente debería actualizarse correctamente pero no es así.

Utilizo Access XP.

Gracias por vuestra ayuda. Saludos.
  #2 (permalink)  
Antiguo 29/08/2003, 12:02
 
Fecha de Ingreso: julio-2003
Ubicación: mi camioneta?
Mensajes: 87
Antigüedad: 21 años, 9 meses
Puntos: 0
te recomiendo que hagas un
Response.Write sSQL

despues de definir la instruccion..
asi puedes ver en tu navegador los valores exactos que estas pasando, y si esta bien escrito.

Saludos
  #3 (permalink)  
Antiguo 29/08/2003, 13:16
 
Fecha de Ingreso: mayo-2003
Mensajes: 17
Antigüedad: 21 años, 11 meses
Puntos: 0
Gracias por tu ayuda.

He hecho lo que me dijiste y el resultado de Response.Write sSQL es el siguiente:

update albara set factura=1 where client=3 and data between 01/06/2003 and 01/07/2003

Pero sigue sin actualizar el registro que cumple las dos condiciones, es decir aquél que tenga el valor client = 3 y data entre 01/06/2003 y 01/07/2003 y por supuesto este registro existe.
  #4 (permalink)  
Antiguo 29/08/2003, 14:07
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 23 años, 5 meses
Puntos: 0
y haz tratado cambiando el between?

.....where (client=3) and ((data=>01/06/2003) and (data<=01/07/2003))
  #5 (permalink)  
Antiguo 29/08/2003, 18:04
 
Fecha de Ingreso: mayo-2003
Mensajes: 17
Antigüedad: 21 años, 11 meses
Puntos: 0
Gracias por tu ayuda pero sigue sin actualizar el registro que cumple las condiciones.
El problema está en comparar dos fechas que, por lo que parece no se hace igual que con dos números.

Gracias a todos.
  #6 (permalink)  
Antiguo 01/09/2003, 07:56
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 23 años, 5 meses
Puntos: 0
en que formato esta almacenada tu fecha?
  #7 (permalink)  
Antiguo 01/09/2003, 10:09
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:
La función "update" no me da ningún error, pero no actualiza los registros que debería

si que te está dando errores, estoy seguro. Lo que ocurre es que al tener un on error resume next no los está mostrando. comentá esa línea y decinos qué error te devuelve.
  #8 (permalink)  
Antiguo 01/09/2003, 11:21
 
Fecha de Ingreso: agosto-2003
Mensajes: 46
Antigüedad: 21 años, 7 meses
Puntos: 0
He tio, estoy con bakanzipp, revisa si las fechas las almacenas en formato americano mes/dia/año
  #9 (permalink)  
Antiguo 01/09/2003, 11:25
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 23 años, 5 meses
Puntos: 0
daz..si hay errores si los muestra

If Err.Description <> "" then
Response.Write "<B>Error en BBDD: " & Err.Description & "</B>"

aunque seria mejor asi

If Err.Number <> "" then
Response.Write "<B>Error en BBDD: " & Err.Description & "</B>"
  #10 (permalink)  
Antiguo 01/09/2003, 12:24
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:
Mensaje Original por bakanzipp
daz..si hay errores si los muestra

If Err.Description <> "" then
Response.Write "<B>Error en BBDD: " & Err.Description & "</B>"

aunque seria mejor asi

If Err.Number <> "" then
Response.Write "<B>Error en BBDD: " & Err.Description & "</B>"

Jeje... me faltó leer 9 líneas más abajo. Llegué a la línea del "on error..." y ahí paré. Sorry, no vi que habí una comprobación de errores ;)
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 02:58.