Tengo una consulta sobre un metodo que hice para insertar en una tabla.
La misma esta compuesta por datos de texto y una imagen. El problema lo tengo a la hora de insertar la imagen.
este es el error que me da:
Error You have an error in you SQL syntax, check the manual that conrresponds to your MySQL server version fon right syntax to use near '* FROM OPENROWSET (BULK N'C:\Users\\mennani\Pictures\disposicion de papel\2013120.jpg' at line 1
No se como solucionarlo.
Este es el codigo:
Código:
public void nuevoArticulo(String nombre, String descripcion, int stockMinimo, int stockActual, Float precio, String ubicacion, Blob imagen, int categoria) { //METODO PARA GUARDAR UN NUEVO ARTICULO Connection miConexion = (Connection) ConexionDB.GetConnection(); String idString; try { Statement statement = (Statement) miConexion.createStatement(); Statement statement2 = (Statement) miConexion.createStatement(); Statement statement3 = (Statement) miConexion.createStatement(); setNombre(nombre); setDescripcion(descripcion); setStockMinimo(stockMinimo); setStockActual(stockActual); setCategoria(categoria); setPrecio(precio); setImagen(imagen); setUbicacion(ubicacion); ResultSet existe = statement3.executeQuery("select nombre from productos where nombre = '"+jTextField2.getText()+"'"); if (existe.next()==false){ //DETERMINO SI ES EL PRIMER REGISTRO O NO ResultSet maximo = statement2.executeQuery("select id from productos order by id desc"); if (maximo.next()==true){ String idMaximo = maximo.getString("id"); int id = Integer.parseInt(idMaximo); id = id + 1; //Si hay articulos cargados me paro en el ultimo ID y le sumo 1 idString = Integer.toString(id); }else { //SI NO ES EL PRIMERO idString = "1"; //Si la tabla esta vacia el primer ID es 1 } String fot = futuraFoto.getText(); statement.execute("insert into productos values('" + idString + "','" + nombre + "'," + "'" + descripcion + "','" + stockMinimo + "','" + stockActual + "'" + ",'" + ubicacion + "','" + precio + "','" + categoria + "'," + " * FROM OPENROWSET (BULK N'"+fot+"', medium_blob))"); //fomratoColumnas(); JOptionPane.showMessageDialog(jTable1, "Datos ingresados correctamente"); statement.close(); statement2.close(); statement3.close(); existe.close(); miConexion.close(); }else { JOptionPane.showMessageDialog(null, "Existe un articulo con ese nombre"); } } catch (Exception ex) { JOptionPane.showMessageDialog(jTable1, "Error " + ex.getMessage()); } }
Muchas gracias.
Saludos.