Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Descripción no mostrada en tabla

Hola, he estado teniendo un problema; cuando agrego un nuevo producto aparecen todos los datos pero en la sección de descripción me vuele a mostrar el nombre del producto, he estado revisando por que sucede esto y al parecer todo esta bien. no encuentro el problema. Si alguien pudiera ayudarme se lo agradecería mucho

    public List<Map<String, String>> listar() throws SQLException {
        Connection con = new ConnectionFactory().recuperaConexion();

        Statement statement = con.createStatement();
        statement.execute("SELECT ID, NOMBRE, DESCRIPCION, CANTIDAD FROM PRODUCTO");

        ResultSet resultset = statement.getResultSet();

        List<Map<String, String>> resultado = new ArrayList<>();

        while (resultset.next()) {
            Map<String, String> fila = new HashMap<>();
            fila.put("ID", String.valueOf(resultset.getInt("ID")));
            fila.put("NOMBRE", resultset.getNString("NOMBRE"));
            fila.put("DESCRIPCION", resultset.getNString("DESCRIPCION"));
            fila.put("CANTIDAD", String.valueOf(resultset.getInt("CANTIDAD")));
            resultado.add(fila);
        }

        con.close();

        return resultado;
    }

    public void guardar(Map<String, String> producto) throws SQLException {
        Connection con = new ConnectionFactory().recuperaConexion();

        Statement  statement = con.createStatement();

        statement.execute("INSERT INTO PRODUCTO(NOMBRE, DESCRIPCION, CANTIDAD)"
                + "VALUES('" 
                + producto.get("NOMBRE") + "' , '"
                + producto.get("DESCRIPCION") + "' , " 
                + producto.get("CANTIDAD") + " ) " , Statement.RETURN_GENERATED_KEYS);

        ResultSet resulSet = statement.getGeneratedKeys();

        while (resulSet.next()) {
            System.out.println(String.format( 
                    "Fue incertado el producto  de ID %d",
                    resulSet.getInt(1)));

        }
    }

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

1 respuesta

¡Hola Estudiante!

Parece que el código que has compartido es solo para recuperar y guardar datos en la base de datos, pero no proporciona información específica sobre cómo se está agregando el nuevo producto. Por lo tanto, es difícil determinar exactamente cuál es el problema que estás experimentando.

Sin embargo, si la descripción del producto está siendo reemplazada por el nombre del producto al agregar un nuevo producto, es posible que el problema esté en el formulario o interfaz de usuario donde se están ingresando los datos del producto. Podría ser una configuración incorrecta o un error en la lógica que está enviando los datos incorrectos a la base de datos.

Para resolver el problema, podría intentar lo siguiente:

  1. Verificar que los datos del producto se están ingresando correctamente en la interfaz de usuario o formulario antes de ser enviados a la base de datos.
  2. Verificar que la base de datos está configurada correctamente y que la columna de descripción está definida correctamente en la tabla de productos.
  3. Verificar que los nombres de las columnas en la tabla de productos coinciden con los nombres de las claves en el mapa de producto que se está utilizando en el código Java.
  4. Verificar que los tipos de datos de los valores en el mapa de producto coinciden con los tipos de datos de las columnas en la tabla de productos.

Espero que estos consejos te ayuden a identificar y resolver el problema que estás experimentando al agregar un nuevo producto. Si aún tienes problemas, es posible que necesites compartir más detalles sobre cómo se está ingresando el producto y cómo se está llamando al método guardar.