Mi problema es el siguiente:
Mi metodo creador es el siguiente:
public Catalog(String identificador)throws SQLException
{
String consulta1 = "Select * from Catalog WHERE id_catalogo like '" + identificador + "'";
Consulta consulta = Consulta.GetInstancia();
ResultSet rs = consulta.EjecutaConsulta(consulta1);
while(rs.next())
{
int id = rs.getInt(1);
String name = rs.getString(2);
String description = rs.getString(3);
String icon = rs.getString(4);
boolean active = rs.getBoolean(5);
products = new ArrayList<Product>();
this.list_products();
categories = new ArrayList<Category>();
this.list_categories();
}
Y resulta que tengo un metodo update que hace lo siguiente:
public void update(String n, String d, String i, boolean a) throws SQLException
{
name = n;
description = d;
icon = i;
active = a;
String actualiza = "UPDATE Catalog SET name='" + name + "', description='" + description + "', icon='" + icon + "', active='" + active + "' WHERE id_catalogo like '" + id + "'";
Consulta consulta = Consulta.GetInstancia();
consulta.EjecutaConsultaCreacion(actualiza);
}
Fuera de esta clase hago una llamada:
Catalog catalogo = new Catalog(identificador);
catalogo.update("valor1","valor2","valor3","valor4 ");
Mi problema es que no me actualiza la base de datos ya que al llegar al metodo update el valor que tenia el identificado se pierde y se queda a 0.
¿tendria que pasar por valor en id al método UPDATE?
Muchas gracias por vuestra ayuda¡