Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Nao grava alteracao

Boa tarde galera, seguinte eu estou montando o metodo editar aqui ele esta editando, volta pra tela com a alteracao que eu fiz mas se fechar a aplicacao e abrir novamente ele perde a alteracao...

meu editar esta assim

    private void altera(Nota nota, int posicao) {

            GeradordeBancodeDados gerador = new GeradordeBancodeDados();
            NotaDaoo notaDaonew = (NotaDaoo) gerador.gera(this).getNotaDaoo();
            notaDaonew.altera(nota);
            adapter.altera(posicao, nota);

meu Dao

@Update
    void altera(Nota nota);

a verdade e que eu nao sei qual parte devo olhar, pq essas ai aparentemente estao certas..alguma dica?

2 respostas

Mano, sei que é uma pergunta inocente, mas você adicionou uma propriedade na classe Nota e anotou ela como @PrimaryKey (tipo um id) ? Eu esqueci disso na primeira vez que usei o Room, e por causa disso meus updates e deletes não funcionavam.

O Room usa os campos anotados como chave primária como referência para fazer essas operações no banco de dados.

solução!

Eae, entao mano pior que coloquei sim, olha ai como ta rs

@Entity
public class Nota implements Serializable{

    @PrimaryKey(autoGenerate = true)
    private Long id;
    private final String titulo;
    private final String descricao;

    public Nota(String titulo, String descricao) {
        this.titulo = titulo;
        this.descricao = descricao;
    }

e pra baixo tem os get e set