3
respuestas

Solo puedo hacer UNA modificación, por que?

Buenos días:

Tengo el siguiente problema: ejecuto la aplicación, pero solo puedo hacer un solo agregado a la lista de productos o una modificación a un producto existente. Luego de eso, al intentar realizar otra consulta me da el siguiente error; es como que no me deja porque la conexión se cerró luego de la ultima consulta y no me permite abrir otra?

Desde ya, mil gracias por la ayuda.

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

3 respuestas

Hola Alejandra,

Parece que el problema con la conexión a la base de datos después de realizar una operación de modificación no puedes abrir otra para realizar más operaciones.

Esto puede ser debido a cómo estás manejando las conexiones a la base de datos en tu código. En Java, es importante recordar cerrar las conexiones, los resultados y las declaraciones después de usarlas para liberar recursos. Sin embargo, si cierras la conexión demasiado pronto, no podrás realizar más operaciones en la misma conexión.

Para compreender mejor, si tienes algo similar a esto:

Connection conn = DriverManager.getConnection(DB_URL, USER, PASS);
Statement stmt = conn.createStatement();
stmt.executeUpdate(SQL);
conn.close();
stmt.executeUpdate(OTHER_SQL); // Esto dará error porque la conexión ya está cerrada

En este caso, después de cerrar la conexión con conn.close(), cualquier intento de realizar más operaciones en la misma conexión dará un error.

Para resolver este problema, asegúrate de que sólo cierras la conexión cuando hayas terminado todas las operaciones que necesitas hacer. Por ejemplo:

Connection conn = DriverManager.getConnection(DB_URL, USER, PASS);
Statement stmt = conn.createStatement();
stmt.executeUpdate(SQL);
stmt.executeUpdate(OTHER_SQL);
conn.close(); // Ahora cerramos la conexión después de realizar todas las operaciones

En este caso, ambas operaciones se realizan en la misma conexión antes de cerrarla.

Espero que esta explicación te ayude a entender el problema. Mucho éxito en todo lo que te propongas y si tienes más duda aquí estaremos para apoyarte.

¡Vamos juntos!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios.

Hola Adriana!

Ya lo resolví! tenía una "ensalada" con los try-catch with resources, utilizando los metodos para las versiones 7 y 9 mezclados.

Después de corregirlo todo a la version 9, ya puedo hacer modificaciones como desee. Muchas gracias!

Alejandra.

Creo que tienes este mismo problema, te recomiendo revisarlo en este enlace → https://app.aluracursos.com/forum/topico-duda-error-you-can-t-operate-on-a-closed-connection-220456