Estou com duvida de como funciona o versionamento do banco com o método onUpgrade. Como ele sabe que a versão do banco mudou se eu apenas alterei o valor da constante?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Estou com duvida de como funciona o versionamento do banco com o método onUpgrade. Como ele sabe que a versão do banco mudou se eu apenas alterei o valor da constante?
Ol
Oi Andre tudo bem?
Esse foi o mecanismo da Google para atualização do banco. Quando instanciamos um SQLiteOpenHelper pela primeira vez ele cria o banco (roda o método onCreate) e guarda nesse banco criado sua versão (normalmente 1). Quando posteriormente instanciarmos o helper novamente ele verifica se a versão do SQLite instalado no device é igual a versão passada pelo construtor, caso não seja ele roda o método onUpgrade. Fica por nossa conta escrever os "if's" e de acordo com a versão do banco criado no device do usuário e a versão proposta pela app fazer os devidos "alter tables". Tudo isso baseado no metadado da versão do banco que é guardada para nós automaticamente.
Abraços e bom curso!
Entendi agora.Valew!