Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/12/2012, 10:24
yamidvo
 
Fecha de Ingreso: junio-2012
Ubicación: colombia
Mensajes: 48
Antigüedad: 11 años, 11 meses
Puntos: 0
Exclamación Error UPDATE mysql-java

he utilizado muchas veces la sentencia UPDATE y no me habia dado problemas, pero esta vez no se que pasa!
he intentado de varias formas y este codigo parece que esta erroneo.

Código java:
Ver original
  1. void actualizar(String ide){
  2.         int cantid;
  3.         ConexionMySQL mysql = new ConexionMySQL();
  4.         Connection cn = mysql.Conectar();
  5.         String sSQL = "";
  6.         String mensaje = "";
  7.        
  8.         cantid=Integer.parseInt(ModifCant.getText());
  9.         int ident=Integer.parseInt(ide);
  10.        
  11.         sSQL = "UPDATE detalle " +
  12.                 "SET cantidad = ?" +
  13.                  "WHERE id_detalle = "+ident;
  14.         mensaje = "Se ha modificado!...";
  15.        
  16.         try
  17.         {
  18.             PreparedStatement pst = cn.prepareStatement(sSQL);
  19.             pst.setInt(1, cantid);
  20.  
  21.  
  22.             int n = pst.executeUpdate();
  23.  
  24.             if(n > 0)
  25.             {
  26.                 JOptionPane.showMessageDialog(null, mensaje);
  27.                 CargarTablaDetalle(factura);
  28.             }
  29.         }
  30.         catch (SQLException ex)
  31.         {
  32.             JOptionPane.showMessageDialog(null, ex);
  33.         }
  34.     }
  35.    
  36.     void eliminarRegistro(String ide){
  37. String sSQL,mensaje;
  38.  
  39. ConexionMySQL mysql = new ConexionMySQL();
  40.         Connection cn = mysql.Conectar();
  41.        
  42.           sSQL = "DELETE FROM detalle " +
  43.                  "WHERE id_detalle = "+ide;
  44.         mensaje = "OK...";
  45.  
  46.           try
  47.         {
  48.             PreparedStatement pst = cn.prepareStatement(sSQL);
  49.  
  50.  
  51.             int n = pst.executeUpdate();
  52.  
  53.             if(n > 0)
  54.             {
  55.                 JOptionPane.showMessageDialog(null, mensaje);
  56.                 CargarTablaDetalle(factura);
  57.             }
  58.         }
  59.         catch (SQLException ex)
  60.         {
  61.             JOptionPane.showMessageDialog(null, ex);
  62.         }
  63.     }

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorEx ception: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'id_detalle = 62' at line 1

el parametro "ide" del metodo lo tomo de una tabla, el usuario selecciona un fila de la tabla y tengo un evento que toma el el valor del campo ID.

la tabla en la base de datos esta compuesta por 6 campos los cuales son tipo: varchar,int,int,int,varchar,int.
el campo id_detalle es el ultimo. por eso lo convierto a int en el codigo.
espero que halla sido especifico.
de antemano gracias por los comentarios.