Engenharia Múltipla Escolha

O Android é compatível com bancos de dados SQLite. Isto significa que todos os bancos de dados poderão ser acessados por meio de seu nome a partir de qualquer classe de nossa APP, porém não fora dela. O que é necessário para criarmos um novo banco de dados SQLite?

O Android é compatível com bancos de dados SQLite. Isto significa que todos os bancos de dados poderão ser acessados por meio de seu nome a partir de qualquer classe de nossa APP, porém não fora dela. O que é necessário para criarmos um novo banco de dados SQLite?

  1. Obter uma instância da implementação de SQLiteOpenHelper usando o construtor definido.
  2. Devemos usar apenas os métodos getWritableDatabase() e getReadableDatabase().
  3. Basta criarmos uma subclasse de SQLiteOpenHelper e alterar o onCreate().
  4. Obter uma instância da implementação de SQLiteDatabase usando o construtor definido.

Resolução completa

Explicação passo a passo

C
Alternativa C

Alternativa C

A alternativa correta é a C, pois a maneira padrão e recomendada no Android para gerenciar a criação e versionamento de bancos de dados SQLite envolve a criação de uma classe personalizada que herde de SQLiteOpenHelper.

Análise Técnica

No ecossistema Android, o gerenciamento de banco de dados relacional segue um fluxo específico baseado na classe SQLiteOpenHelper. Para entender por que a alternativa C é a correta, é preciso compreender os papéis das classes envolvidas:

  • SQLiteOpenHelper: É uma classe auxiliar abstrata que simplifica o gerenciamento de banco de dados. Ela lida com a criação e atualização do banco de dados.
  • Subclassificação: Como SQLiteOpenHelper é abstrata, não podemos instanciá-la diretamente. É obrigatório criar uma subclasse (ex: MeuBancoHelper) que estenda esta classe.
  • Método onCreate(): Dentro desta subclasse, devemos sobrescrever (alterar) o método onCreate(SQLiteDatabase db). É neste método que as instruções SQL para criar as tabelas e estruturas iniciais são executadas.

Portanto, para "criar" um novo banco de dados funcional, o passo fundamental é definir essa estrutura através da subclasse e do método de inicialização.

Análise das Alternativas

AlternativaAvaliaçãoMotivo
AIncorretaApenas obter uma instância do Helper não configura a estrutura do banco. É necessário primeiro definir a lógica de criação na subclasse.
BIncorretaOs métodos getWritableDatabase() e getReadableDatabase() servem para abrir conexões ao banco existente, não para defini-lo ou criá-lo inicialmente.
CCorretaDescreve exatamente o mecanismo de inicialização: estender a classe auxiliar e implementar a lógica de criação no onCreate().
DIncorretaA classe SQLiteDatabase é usada para interagir com o banco, mas não deve ser instanciada diretamente para gerenciar a criação e versões do banco; isso é função do SQLiteOpenHelper.

Conclusão

A criação de um banco de dados no Android exige a definição prévia de como ele será estruturado. Isso é feito criando-se uma subclasse de SQLiteOpenHelper e sobrescrevendo o método onCreate(), onde o sistema executa os comandos de criação automática quando o banco é aberto pela primeira vez.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Engenharia

Ver mais Engenharia resolvidas

Tem outra questão de Engenharia?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.