Ver Mensaje Individual
  #12 (permalink)  
Antiguo 21/04/2016, 22:42
Avatar de detective_jd
detective_jd
 
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años, 7 meses
Puntos: 6
Respuesta: Excepciones y base de datos

Hola Darkmarus, gracias por responder verás intento hacer genérico la parte de los parámetros pero me da estos errores:

insert into cargos (carId,carNombre) values (?,?)
Parameter index out of range (0 < 1 ).
Parameter index out of range (1 > number of parameters, which is 0).

El código de eso está en la clase MyBroker.java

Código Java:
Ver original
  1. public void guardame(ArrayList<String> rows, String nombre) {
  2.         try {
  3.             this.objBD.getQuery().getConnection().prepareStatement(this.sqlInsert(nombre));
  4.             this.doInsert(rows);
  5.             this.objBD.getQuery().execute();
  6.         }
  7.         catch(Exception ex){
  8.             System.out.println(ex.getMessage());
  9.         }
  10.     }
  11.     private String sqlInsert(String nombre){
  12.         ArrayList<String> columnas=objBD.obtenerColumnas(objBD.obtenerResultSet("select * from "+nombre));
  13.         String Consulta = "insert into " + nombre + " (";
  14.             for (String columna : columnas) {
  15.                 if (Consulta.endsWith("(")==false)
  16.                     Consulta += ",";
  17.                 Consulta += columna;
  18.             }
  19.             Consulta += ") values (" ;
  20.             for (String columna : columnas) {
  21.                 if (Consulta.endsWith("(")==false )
  22.                     Consulta += ",";
  23.                 Consulta += "?";
  24.             }
  25.             Consulta += ")";
  26.             System.out.println(Consulta);
  27.             return Consulta;
  28.     }
  29.     private void doInsert(ArrayList<String> rows){
  30.         for(int i =0 ; i < rows.size(); i++){
  31.             try {
  32.                 objBD.getQuery().setString(i, rows.get(i));                
  33.             }
  34.             catch (SQLException ex) {
  35.                 System.out.println(ex.getMessage());
  36.             }
  37.         }
  38.     }

Espero sus respuestas y saludos.