Oi Manoel!
Eu estive lendo a documentação do SQLite para te explicar melhor. \o/
Basicamente, no SQL o ponto e vírgula é usado para separar 2 instruções diferentes em sequencia, por exemplo fazer um drop table
seguido de um create table
.
ENTRETANTO, no execSQL
do Android você só consegue passar uma instrução por vez. Ou seja, no exemplo anterior, você faria um execSQL
para o drop table
e outro execSQL
para o create table
.
Mas e ai? Usar ou não usar o ponto e vírgula?
A documentação diz que é uma boa prática você usar o ponto e vírgula para indicar para o Android que realmente só está sendo passada uma instrução por vez.
Não é obrigatório usar, mas vez ou outra pode dar algum erro pois o compilador não encontrou o final da instrução - e com o ponto e virgula isso é evitado.
Sendo assim, ambas as opções:
"DROP TABLE IF EXISTS Alunos";
ou
"DROP TABLE IF EXISTS Alunos;";
estão corretas, mas a segunda opção está em conformidade com as boas práticas do Android.
Espero ter ajudado!! Qualquer dúvida, só falar!!
Bons estudos!