Como se ejecutan las Transacciones en java
si alguien me podira ayudar en las transacciones en java como se ejecutan y sus metodos que utilizan Gracias.....
Hola!!!!!!!
Q transacciones?? JDBC puro??? Con o sin application server?? Con persistencia???
A lo q voy es q no se sabe q es lo q estas preguntando. La idea de un foro es resolver dudas pero no explicar formas de hacer cosas (salvo q sea algo sencillo), pero en tu caso, existe google
Salu2!!!!!!!!
Q transacciones?? JDBC puro??? Con o sin application server?? Con persistencia???
A lo q voy es q no se sabe q es lo q estas preguntando. La idea de un foro es resolver dudas pero no explicar formas de hacer cosas (salvo q sea algo sencillo), pero en tu caso, existe google
Salu2!!!!!!!!
Bueno, estoy de acuerdo con nikki en el fondo, aunque tampoco hacÃa daño comentar que, como sabrás una transacción es un grupo de instrucciones SQL que se ejecutan de forma atómica, es decir, o todas o ninguna y de forma ordenada.
Para realizar una transacción debes poner el parámetro autoCommit de la conexión a false (normalmente está a true, de modo que las sentencias SQL se van ejecutando al momento)
con.setAutoCommit(false);
Luego, realizas todas las sentencias SQL que necesites que se ejecuten juntas, una detrás de otra, con Statements, PreparedStatements, etc...
Cuando llegues al final y quieras ejecutarlas, tienes que hacer "COMMIT":
con.commit();
Si una transacción falla (y esto lo puedes controlar, ya que lanzará una SQLException. Si las metes en un try/catch, saldrá por el catch si falla) debes hacer una "vuelta atrás" para que la Base de Datos se quede como estaba antes de empezar. Esto se llama "ROLLBACK"
con.rollback();
Para más información, manuales, google, etc...
Y sÃ... estoy de humor y me ha apetecido extenderme, pero no es lo habitual. Intentad averiguar cosas vosotros y preguntad cosas más puntuales...
Un saludo,
Ken
Para realizar una transacción debes poner el parámetro autoCommit de la conexión a false (normalmente está a true, de modo que las sentencias SQL se van ejecutando al momento)
con.setAutoCommit(false);
Luego, realizas todas las sentencias SQL que necesites que se ejecuten juntas, una detrás de otra, con Statements, PreparedStatements, etc...
Cuando llegues al final y quieras ejecutarlas, tienes que hacer "COMMIT":
con.commit();
Si una transacción falla (y esto lo puedes controlar, ya que lanzará una SQLException. Si las metes en un try/catch, saldrá por el catch si falla) debes hacer una "vuelta atrás" para que la Base de Datos se quede como estaba antes de empezar. Esto se llama "ROLLBACK"
con.rollback();
Para más información, manuales, google, etc...
Y sÃ... estoy de humor y me ha apetecido extenderme, pero no es lo habitual. Intentad averiguar cosas vosotros y preguntad cosas más puntuales...
Un saludo,
Ken
