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

Urgente_Problema con executeUpdate

Estas en el tema de Urgente_Problema con executeUpdate en el foro de Java en Foros del Web. Buenos dias, A ver si alguien me puede ayudar. Estoy intentado actualizar una bbdd metiendo los campos recogidos de un formulario. Estos campos los he ...
  #1 (permalink)  
Antiguo 05/08/2009, 03:33
 
Fecha de Ingreso: agosto-2009
Mensajes: 6
Antigüedad: 14 años, 9 meses
Puntos: 0
Urgente_Problema con executeUpdate

Buenos dias,
A ver si alguien me puede ayudar. Estoy intentado actualizar una bbdd metiendo los campos recogidos de un formulario. Estos campos los he creado en la bbdd como text. Si relleno los campos del formulario con numeros se meten en bbdd sin problemas pero si pongo algun caracter en los campos me salta esta excepcion:
java.sql.SQLException: [Microsoft][Controlador ODBC Microsoft Access] Pocos parámetros. Se esperaba 1.

Mi codigo es:

public void actualizarMovil(int idMov, String marcaMov,) {
try {
set = con.createStatement();
.
.
set.executeUpdate( " UPDATE Moviles SET marcaMov = " +marcaMov+ " WHERE idMov " + " LIKE ' %" +idMov + "% ' " );
set.close();
}catch(SQLException e){
System.out.println(e);


Muchas gracias.
  #2 (permalink)  
Antiguo 05/08/2009, 14:54
 
Fecha de Ingreso: junio-2009
Ubicación: Zaragoza
Mensajes: 6
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Urgente_Problema con executeUpdate

Bueno, yo creo que la solución es que prepares la frase SQL entrecomillando el dato que quieres actualizar en la BBDD.

SET marcaMov = '" +marcaMov+ "' WHERE idMov

Observa que hay como tres comillas simples delante y detras de la variables marcaMov. En realidad son una comilla simple y una doble en el primer caso y una doble y una simple en el segundo caso, de esta forma la frase se trasladará a execute como

SET marcaMov = 'AB07056231' WHERE
  #3 (permalink)  
Antiguo 06/08/2009, 06:45
 
Fecha de Ingreso: agosto-2009
Mensajes: 6
Antigüedad: 14 años, 9 meses
Puntos: 0
De acuerdo Respuesta: Urgente_Problema con executeUpdate

Perfecto!!
Has dado en el clavo ECZOR. He hecho lo que me comentas:

UPDATE Moviles SET marcaMov = ' " +marcaMov+ " ' WHERE idMov " + " LIKE '%"

y ya actualiza correctamente sin saltar excepcion.

Muchas gracias por tu tiempo ECZOR.
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 03:49.