Todo estaba bien en mi base de datos, podia consultar y guardar registros, hasta que decidi empezar a actualizar utlizando el comando UPDATE; el programa esta hecho en el lenguaje java, cuando intento actualizar el registro me tira el siguiente error:
java.sql.SQLException : parameter index out of range (5> number of parameters, with is 4).
el nombre de la tabla es producto y tiene 5 campos: id, nombre, proveedor, precio, cantidad; todos los campos son tipo varchar.
el codigo del boton modificar es el siguiente:
Código java:
Ver original conectate mysql = new conectate();
String Id, nom, prov, pre , cant
; Id= txtid.getText();
nom= nombre.getText();
prov= proveedor.getText();
pre= precio.getText();
cant= cantidad.getText();
sSQL = "UPDATE producto " +
"SET nombre = ?," +
"proveedor = ?," +
"precio = ?," +
"cantidad = ?," +
"WHERE id = "+id_actualizar;
/** id_actualizar es una variable de clase y se implementa en el metodo BuscarEditar(String id) donde toma el valor del parametro de dicho metodo*/
String mensaje
= "Los datos se han Modoficado de Manera Satisfactoria...";
try
{
PreparedStatement pst
= cn.
prepareStatement(sSQL
);// con esta sentencia se insertan los datos en la base de datos pst.setString(1, Id);
pst.setString(2, nom);
pst.setString(3, prov);
pst.setString(4, pre);
pst.setString(5, cant);
int n = pst.executeUpdate();//valida si se guardaron los datos; si pst>0 entonces se guardaron
if(n > 0)
{
CargarTabla("");//l momento de agregar un nuevo registro, actualiza la tabla
}
}
{
}
Seguire inventigando por mi cuenta a ver si lo soluciono, gracias a los que respondan.