Java - Problemas al borrar registros.

 
Vista:

Problemas al borrar registros.

Publicado por Ricardo (12 intervenciones) el 05/03/2008 20:19:10
Tengo un ResultSet con una serie de registros. Parte de ellos los quiero actualizar y los restantes borrar, para ello utilizo el siguiente código:

int i = 0;
resultado.beforeFirst();
while(resultado.next()){
if(i<tramitadores.length){
resultado.updateString("codigoGestor",tramitadores[i]);
resultado.updateRow();
}else{
resultado.deleteRow();
}
i += 1;
}

Donde tramitadores es un array en el que se almacenan los datos pasados desde un select múltiple de un formulario.

El anterior código se ejecuta cuando el número de registros del ResultSet es mayor que los valores pasados por el select múltiple.

La actualización me la hace bien, el problema surge cuando se van a borrar del ResultSet más de un registro… sólo borrar uno.

¿A qué puede deberse?
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:Problemas al borrar registros.

Publicado por MMM (17 intervenciones) el 06/03/2008 05:20:56
Me pregunto si tu problema pasa por el hecho de estar poniendo como condición en el while a un resulset que vas a modificar dentro del mismo while.

while(resultado.next()){
...
}else{
resultado.deleteRow();
}
...
}

La verdad ahora no dispongo de tiempo, pero averigua si despues de hacer ese "deleteRow()" tu ResultSet se va al final del mismo o si el cambio de tamaño (recuerda que estás eliminando un elemento del ResultSet) afecta a ese "next()".

A lo mejor ando perdido, pero prueba si por ahí van los tiros.

Espero haberte ayudado. Nos vemos.
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

RE:Problemas al borrar registros.

Publicado por Ricardo (12 intervenciones) el 06/03/2008 06:29:32
Lo he solucionado poniendo, después del resultado.deleteRow(), resultado.previous().

Muchas gracias.
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