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

O onDowngrade não funciona

Ola, segui o ultimo passo da aula, e mudando a versão para dois, dando o onDownGrade e voltando para a 1 ele não está limpando o banco. Fiz exatamente os mesmos passos do professor

Future<Database> createDatabase() {
  return getDatabasesPath().then((dbPath) {
    final String path = join(dbPath, 'bytebank.db');
    return openDatabase(path, onCreate: (db, version) {
      db.execute('CREATE TABLE contacts('
          'id INTEGER PRIMARY KEY, '
          'name TEXT, '
          'account_number INTEGER)');
    }, version: 2,
    onDowngrade: onDatabaseDowngradeDelete
    );
  });
}
4 respostas
solução!

Boa tarde Gabriela, tudo bom? Desculpa a demora pra responder,. Você colocou a versão 2 e depois deu Hot Restart não Hot Reload e em seguida alterou para a versão 1 e deu Hot Restart novamente e ele não deletou o banco de dados, é isso mesmo?

Se importaria de testar uma coisinha pra mim?

Coloca ele na versão 5 e depois volta pra versão 4 e veja se funciona (se funcionar significa que tem um arquivo de versão 2 no seu emulador já e portanto não há como dar o downgrade, ai é só limpar os dados do emulador)

Se mesmo assim não funcionar vou pedir pra você voltar aqui e me dar um grito okay?

De fato, atualmente não está funcionando aqui tive o mesmo problema que a Gabriela, mesmo colocando a versão 5 e depois a 4

Bom dia André!

Você se importaria em me mandar seu LOG quando você roda ele com a versão menor? No caso eu preciso que você atualize para a versão 2, depois mude para versão 1 e dê um restart no App, nesse ultimo restart pega pra mim as informações que aparecem lá em baixo no console e cola aqui pra mim :)

Fico no aguardo!

Esqueci de atualizar aqui! Para mim deu certo. Obrigado Caio