Foro de elhacker.net

Programación => Java => Mensaje iniciado por: .:UND3R:. en 20 Octubre 2013, 03:44 am



Título: Problema con consulta SQL
Publicado por: .:UND3R:. en 20 Octubre 2013, 03:44 am
Hola estoy teniendo problemas con una consulta SQL (Access), me marca que los datos no coinciden con los de la BD, pero no logro darme cuenta cual es:

Lo que envío al método:
Código
  1. ArrayList datosClientes = new ArrayList();
  2.                    datosClientes.add(jTextField_rut.getText());
  3.                    datosClientes.add(tipo);
  4.                    datosClientes.add(jTextField_nombre.getText());
  5.                    datosClientes.add(jTextField_apellido_paterno.getText());
  6.                    datosClientes.add(jTextField_apellido_materno.getText());
  7.                    datosClientes.add(fechaNacimiento);
  8.                    datosClientes.add("Date()");
  9.                    datosClientes.add(sexo);
  10.                    datosClientes.add(jTextField_direccion.getText());
  11.                    datosClientes.add(jTextField_comuna.getText());
  12.                    datosClientes.add(jTextField_ciudad.getText());
  13.                    datosClientes.add(jTextField_tel_movil.getText());
  14.                    datosClientes.add(jTextField_tel_fijo.getText());
  15.                    datosClientes.add(jTextField_email.getText());
  16.                    datosClientes.add(jTextField_referido.getText());
  17.                    datosClientes.add(jTextField_descuento.getText());
  18.                    datosClientes.add(jTextField_observaciones.getText());
  19.  
  20.                    JavaClass.BDClass.insertarCliente(datosClientes);

insertarCliente:

Código
  1. public static void insertarCliente(ArrayList input) throws ClassNotFoundException, SQLException {
  2.        String sql = "INSERT INTO Clientes(Rut, Tipo, Nombre, ApellidoPaterno, ApellidoMaterno, FechaNacimiento, FechaRegistro, Sexo, Direccion, Comuna, Ciudad, TelMovil, TelFijo, CorreoElectronico, Referido, Descuento, Observaciones) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);";
  3.  
  4.        JavaClass.BDClass db;
  5.        db = new JavaClass.BDClass();
  6.  
  7.        conexion = db.connect();
  8.        PreparedStatement pst = conexion.prepareStatement(sql);
  9.  
  10.        for(int i=1; i<12; i++){
  11.            pst.setString(i, input.get(i-1).toString());
  12.        }
  13.  
  14.        for(int i=12; i<14; i++){
  15.            if(input.get(i).toString().trim().length() == 0){
  16.                pst.setInt(i, 1);//
  17.            }else{
  18.                pst.setInt(i, Integer.parseInt(input.get(i-1).toString()));
  19.            }
  20.        }
  21.  
  22.        for(int i=14; i<16; i++){
  23.            pst.setString(i, input.get(i-1).toString());
  24.        }
  25.  
  26.        if(input.get(16).toString().trim().length() == 0){
  27.            pst.setInt(16, 2);//      
  28.        }else{
  29.            pst.setInt(16, Integer.parseInt(input.get(15).toString()));  
  30.        }
  31.  
  32.        pst.setString(17, input.get(16).toString());
  33.  
  34.        pst.executeUpdate();
  35.        conexion.close();
  36.  
  37.        for(int i=0; i<17; i++){
  38.            System.out.println(input.get(i));
  39.        }
  40.    }

 >:(

Solucionado: El problema ocurría al intentar poner la fecha con setString, siendo correcto setDate

Cierro el thread