deshacer cambios

26/04/2004 - 19:18 por reo | Informe spam
como puedo deshacer cambios hechos en la BD de sql server, desde un fichero
ASP, ya sea de insercion, modificacion o borrado.

es decir, tengo una tabla donde introduzco cantidad,precio,importe,cliente y
en otra tabla tengo clientes,precio_maximo
lo que intento hacer es que no se pueda insertar un importe mayor que el
importe que tengo en la tabla de clientes, para ello o lo hago controlando
con javascript o lo hago en vbscript una vez guardardo

(en javascript es mas rapido pero si inserto decimales, puede que no
coincida, ya que debo utilizar la funcion round, y esta funcion da valores
distintos en javascript y vbscript aun siendo la misma cantidad
otra cosa de no utilzar vbscript es que una vez insertado, si necesito
cambiar lo guardado, no hay forma de deshacer)

mi pregunta es:
1.- hay alguna forma de deshacer lo insertado,modificado o borrado
en sql server, para dejarlo tal y como no hubiera pasado nada

2,.hay alguna manera de hacer que el round de javascript funcione
como el round de vbscript o incluso como el round de sql server.

muchas gracias
 

Leer las respuestas

#1 danicastillo
26/04/2004 - 21:18 | Informe spam
Hola
¿porque una vez grabado?

tu tienes supongo en la tabla de clientes almacenado siempre el valor maximo

luego una tabla de articulos o lo que sea que vas cargando y modificando con
un formulario ¿no?

eso es un formulario que al hacer submit llama a un asp donde actualizas el
valor, pues simplemente haz la comprobacion antes de esa actualizacion

algo como (por encima)
<%
cliente=request.form("cliente")
precio=request.form("precio")
cantidad=
importe=

' abres un recordset sobre la tabla de clientes
rs.open "select * from clientes where idcliente= " & cliente , ..
if importe > rs("precio_maximo") then
response.write "no puedes"
else
' abres recordset para grabar /actualizar
' o haces un update from
end if

rs.close
set rs=nothing
%>


si eso no te vale prueba con begintrans, rollback y committrans, pero creo
que es liar mucho para lo que quieres hacer :)

-o|o|--
-o|o| dani castillo
-o|o| http://www15.brinkster.com/danic/
-o|o| tutorial y trucos asp, vb, diseño
-o|o|--
"reo" escribió en el mensaje
news:%
como puedo deshacer cambios hechos en la BD de sql server, desde un


fichero
ASP, ya sea de insercion, modificacion o borrado.

es decir, tengo una tabla donde introduzco cantidad,precio,importe,cliente


y
en otra tabla tengo clientes,precio_maximo
lo que intento hacer es que no se pueda insertar un importe mayor que el
importe que tengo en la tabla de clientes, para ello o lo hago controlando
con javascript o lo hago en vbscript una vez guardardo

(en javascript es mas rapido pero si inserto decimales, puede que no
coincida, ya que debo utilizar la funcion round, y esta funcion da valores
distintos en javascript y vbscript aun siendo la misma cantidad
otra cosa de no utilzar vbscript es que una vez insertado, si necesito
cambiar lo guardado, no hay forma de deshacer)

mi pregunta es:
1.- hay alguna forma de deshacer lo insertado,modificado o borrado
en sql server, para dejarlo tal y como no hubiera pasado nada

2,.hay alguna manera de hacer que el round de javascript funcione
como el round de vbscript o incluso como el round de sql server.

muchas gracias


Preguntas similares