Foros del Web » Programación para mayores de 30 ;) » Java »

Conectarse a distintas bases de datos

Estas en el tema de Conectarse a distintas bases de datos en el foro de Java en Foros del Web. Hola amigos. Me encuentro nuevamente aca para hacerles la siguiente consulta. Mi historia es la siguiente. Necesito conectarme a una base de datos dependiendo del ...
  #1 (permalink)  
Antiguo 09/04/2015, 21:41
 
Fecha de Ingreso: julio-2013
Ubicación: Temuco
Mensajes: 48
Antigüedad: 10 años, 10 meses
Puntos: 0
Exclamación Conectarse a distintas bases de datos

Hola amigos. Me encuentro nuevamente aca para hacerles la siguiente consulta.
Mi historia es la siguiente. Necesito conectarme a una base de datos dependiendo del código de sucursal, y para posterior, realizar la ejecución de un procedimiento almacenado en la base datos que se requiera..

Tengo una idea de como hacerlo, pero creo que no esta resultando:

Código Java:
Ver original
  1. if(codigoSucursales.getText().equals("20")){
  2.         if(conexion!=null){
  3.               System.err.println(conexion);
  4.               conn.cerrarConexion(); // cierro la conexion actual de la base de datos la cual seria conectar();
  5.              conn.conectarImp();   // me conecto a la base datos "IMP"
  6.              for(int i=0; i<tablaProductos.getRowCount(); i++){
  7.  
  8.                     String sqql = "execute procedure Unprocedimiento ("+
  9.                     Integer.parseInt(codigoSucursales.getText())+", '"+
  10.                     tablaProductos.getModel().getValueAt(i,0).toString()+"', "+
  11.                     Double.parseDouble(tablaProductos.getModel().getValueAt(i,3).toString())+", "+
  12.                     Integer.parseInt(txtDejarCero.getText())+", "+
  13.                     Integer.parseInt(codigoTipo.getText())+", "+
  14.                     Integer.parseInt(codigoMotivo.getText())+", "+
  15.                     Integer.parseInt(codFolio.getText())+", '"+
  16.                     txtAutoriza.getText()+"')";
  17.                     System.err.println(sqql);
  18.                     conn.ejecutarProcedimientos(sqql);
  19.             }
  20.              }
  21.        }

De esta manera estoy cerrando la conexion:

Código Java:
Ver original
  1. public static void cerrarConexion () throws SQLException{
  2.      
  3.             conexion.close();
  4.             System.err.println("Se cierra la conexión.");
  5.             conexion= null;
  6.             System.err.println(conexion);
  7.  
  8.     }

y de esta manera me conecto a IMP.

Código Java:
Ver original
  1. public static void conectarImp() {
  2.            
  3.         try {
  4.             Class.forName(driver);
  5.             conexion = DriverManager.getConnection(baseDatosImp, user, password);
  6.             conexion.setAutoCommit(false);
  7.             System.out.println("Éxito: Se hizo la conexión a BD de Imp.");
  8.         } catch (ClassNotFoundException | SQLException e) {
  9.             JOptionPane.showMessageDialog(null, "Error: Imposible realizar la conexion a BD.");
  10.          
  11.         }
  12.        
  13.     }

Última edición por CHAEEZ; 09/04/2015 a las 21:47
  #2 (permalink)  
Antiguo 10/04/2015, 00:31
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: Conectarse a distintas bases de datos

Buenas,

Y a que te refieres cuando dices que no te esta resultando?

Seria mejor enriquecer un poco el catch para que sepas al menos que falla:

catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
JOptionPane.showMessageDialog(null, "Error: Imposible realizar la conexion a BD.");
}



Un saludo
__________________
If to err is human, then programmers are the most human of us
  #3 (permalink)  
Antiguo 10/04/2015, 06:11
 
Fecha de Ingreso: julio-2013
Ubicación: Temuco
Mensajes: 48
Antigüedad: 10 años, 10 meses
Puntos: 0
Respuesta: Conectarse a distintas bases de datos

me refiero a que la transaccion la realiza pero no en la base de datos que se necesita. que en este caso es IMP. Probare lo que me mencionas, ahi les cuento como me fue.

Etiquetas: bases, distintas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:38.