buenas noches chiquillos! tengo una duda con unos metodos que cree para las transacciones (commit() y rollback())
Por ejemplo, este metodo lo utilizo para la conectarme a BD.
Código Java:
Ver originalpublic static void conectar() {
try {
Class.forName(driver);
conexion.setAutoCommit(false);
System.
out.
println("Éxito: Se hizo la conexión a BD."); JOptionPane.
showMessageDialog(null,
"Error: Imposible realizar la conexion a BD."); e.printStackTrace();
}
}
Luego, el siguiente metodo lo utilizo para realizar insert, update o delete en su defecto.
Código Java:
Ver originalpublic boolean consultaActualiza
(String sql
) { try {
Statement sentencia
= conexion.
createStatement(); sentencia.executeUpdate(sql);
e.printStackTrace();
return false;
}
return true;
}
Y estos dos ultimos metodos solo los que utilizo para el commit y rollback:
Código Java:
Ver originalpublic static void Commit() {
try {
conexion.commit();
JOptionPane.
showMessageDialog(null,
"Transacción exitosa."); Logger.getLogger(bdConexion.class.getName()).log(Level.SEVERE, null, ex);
}
}
public static void Rollback() {
try {
conexion.rollback();
Logger.getLogger(bdConexion.class.getName()).log(Level.SEVERE, null, ex);
}
JOptionPane.
showMessageDialog(null,
"No se completó la transacción."); }
No los he probado, pero quiero sacarme las dudas y si tienen alguna sugerencia bacan seria.
Para utilizarlas seria algo como :
Código Java:
Ver originalMySQLBD baseDatos = new MySQLBD();
if (baseDatos.consultaActualiza("INSERT INTO TEST(IDENTIFICADOR,DESCRIPCION) VALUES(3,'TRES')")) {
baseDatos.Commit();
System.
out.
println("Ejecución correcta!"); } else {
baseDatos.Rollback();
System.
out.
println("Ocurrió un problema al ejecutar!"); } ResultSet resultados
= baseDatos.
consultar("SELECT * FROM TEST"); if (resultados
!= null) { try {
System.
out.
println("IDENTIFICADOR DESCRIPCION"); System.
out.
println("--------------------------------"); while (resultados.next()) {
System.
out.
println(""+resultados.
getBigDecimal("IDENTIFICADOR")+" "+resultados.
getString("DESCRIPCION")); }
e.printStackTrace();
}
}
Ayudenme porfavor a salir de mi duda!! :D