Java - ROLLBACK

 
Vista:

ROLLBACK

Publicado por SARA (58 intervenciones) el 01/08/2005 19:48:40
hola! tengo este codigo java:

int afectadosPractica= gdp.aniadirPractica(practica);
int afectadosEjercicioPractica =gdp.añadirEjercicio(ejercicios,practica.getIdentificador());
if((afectadosPractica>0)&&(afectadosEjercicioPractica>0)){
out.print("<table align='center'><tr valign='middle'><td>LA PRACTICA A SIDO AÑADIDA CORRECTAMENTE</td></tr></table>");
}
else{
if(afectadosPractica<=0){
out.print("<table align='center'><tr valign='middle'><td>ERROR AL AÑADIR LA PRACTICA</td></tr></table>");
}
if(afectadosEjercicioPractica<=0){
out.print("<table align='center'><tr valign='middle'><td>ERROR AL AÑADIR LOS EJERCICIOS A LA PRACTICA</td></tr></table>");
}

Las funciones aniadirPractica, aniadirEjercicio... son funciones muy simples que solamente insertan valores en la base de datos, yo lo que hago es comprobar el valor que devuelve la insercion, si el >0 lo ha insertado correctamente si no muestro mensaje de error, pero además de mostrar el erro me gustaria que :
-si la inserccion da error se haga un rollback;
-si todas las insercciones son correctas, se haga un commit

además seria deseable que cuando un usuario va a insertar o borrar valores de una tabla se aplicase sobre la misma un bloqueo "for update"

mi problema es qeu todas estas cosas las se hacer con oracle pero no se como hacerlo desde java. A ver si me podeis hechar un cable.
MUCHAS GRACIAS DE ANTEMANO!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ROLLBACK

Publicado por Oscar (41 intervenciones) el 02/08/2005 06:42:08
Hola,

Para esto puedes usar los metodos commit y rollback de la clase Connection.

El codigo seria algo asi:

Connection con = // crear coneccion...
try {
// Codigo donde van los inserts y updates, y demas...

// Al final de todo esto, se asume que todo se hizo bien y se realiza el commit...
con.commit();
} catch(SQLException e) {
// Si algo salio mal, se hace un rollback
con.rollback();
}

Saludos
Oscar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar