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

Error UPDATE mysql-java

Estas en el tema de Error UPDATE mysql-java en el foro de Java en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 11/12/2012, 10:24
 
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.
  #2 (permalink)  
Antiguo 11/12/2012, 10:37
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Error UPDATE mysql-java

no veo que conviertas el String en Integer dentro del método eliminarRegistro.
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #3 (permalink)  
Antiguo 11/12/2012, 10:40
 
Fecha de Ingreso: junio-2012
Ubicación: colombia
Mensajes: 48
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: Error UPDATE mysql-java

Claro que si!!!
linea 9:
Código java:
Ver original
  1. int ident=Integer.parseInt(ide);
  #4 (permalink)  
Antiguo 11/12/2012, 10:57
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Error UPDATE mysql-java

He dicho el método eliminarRegistro, no el método actualizar.

Cita:
void eliminarRegistro(String ide){
String sSQL,mensaje;

ConexionMySQL mysql = new ConexionMySQL();
Connection cn = mysql.Conectar();

sSQL = "DELETE FROM detalle " +
"WHERE id_detalle = "+ide;
mensaje = "OK...";
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #5 (permalink)  
Antiguo 11/12/2012, 11:02
 
Fecha de Ingreso: junio-2012
Ubicación: colombia
Mensajes: 48
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: Error UPDATE mysql-java

ese codigo esta bn, elimino sin problemas.
el problema esta en metodo actualizar.
  #6 (permalink)  
Antiguo 11/12/2012, 11:19
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Error UPDATE mysql-java

Si eliminas sin problemas pasandole un String, ¿por qué no se lo pasas también al método actualizar?
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #7 (permalink)  
Antiguo 11/12/2012, 11:21
 
Fecha de Ingreso: junio-2012
Ubicación: colombia
Mensajes: 48
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: Error UPDATE mysql-java

Ya lo arregle!
he aqui el codigo por si alguien lo necesita:
Código java:
Ver original
  1. void actualizar(String ide){
  2.         ConexionMySQL mysql = new ConexionMySQL();
  3.         Connection cn = mysql.Conectar();
  4.         String sSQL = "";
  5.         String mensaje = "";
  6.        
  7.         sSQL = "UPDATE detalle " +
  8.                 "SET cantidad = ?" +
  9.                  "WHERE id_detalle = "+ide;
  10.         mensaje = "Se ha modificado!...";
  11.        
  12.         try
  13.         {
  14.             PreparedStatement pst = cn.prepareStatement(sSQL);
  15.             pst.setString(1, ModifCant.getText());
  16.  
  17.  
  18.             int n = pst.executeUpdate();
  19.  
  20.             if(n > 0)
  21.             {
  22.                 JOptionPane.showMessageDialog(null, mensaje);
  23.                 CargarTablaDetalle(factura);
  24.             }
  25.         }
  26.         catch (SQLException ex)
  27.         {
  28.             JOptionPane.showMessageDialog(null, ex);
  29.         }
  30.     }

Etiquetas: mysql+db, update
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 13:21.