greendao, como ser avisado em caso de falha na atualização
Pergunta
Eu li a documentação do greendao e não encontrei nenhuma pista sobre uma forma de ser avisado se, por algum motivo, uma atualização falhar para uma entidade...
a atualização (entidade T) não retorna nada nem gera nenhum erro ...
então, há alguma maneira de saber se o processo de atualização falhou?
obrigado.
Solução
Se a atualização não funcionar, você receberá um SQLException.Desde SQLException extends [RuntimeException][2] it doesn't have to be handled and thus doesn't have to be declared with
joga`.
As únicas razões para falha na atualização em que consigo pensar no momento:
- A chave primária no seu objeto de atualização está vazia.
- A chave primária do seu objeto de atualização não foi encontrada no seu banco de dados.
- A atualização viola algumas restrições (ou seja,exclusivo).
- O banco de dados ou sistema de arquivos está corrompido.
Então, normalmente, se você tiver certeza de que não violará as restrições e se tiver cuidado com a chave primária, suas atualizações não falharão.
Se você não tiver certeza, pode cercar sua atualização com try-catch-block.
try {
myEntityDao.update(myObj);
} catch (SQLException ex) {
// handle the failure here
}