Engenharia Múltipla Escolha

De forma geral, quando criamos aplicativos para acesso ao banco de dados, com base no JDBC, temos instruções SQL em meio ao código Java, onde algumas são comandos para manipulação de dados (DML) e outras fazem consultas aos dados armazenados. Para efetivar um comando DML, como Insert ou Delete, qual método deve ser utilizado?

De forma geral, quando criamos aplicativos para acesso ao banco de dados, com base no JDBC, temos instruções SQL em meio ao código Java, onde algumas são comandos para manipulação de dados (DML) e outras fazem consultas aos dados armazenados. Para efetivar um comando DML, como Insert ou Delete, qual método deve ser utilizado?

  1. prepareStatement
  2. forName
  3. executeUpdate
  4. getConnection

Resolução completa

Explicação passo a passo

C
Alternativa C

Alternativa C - executeUpdate

A questão aborda o uso da API JDBC (Java Database Connectivity) para interação com bancos de dados através da linguagem SQL. Para responder corretamente, é necessário distinguir os tipos de comandos SQL e os métodos correspondentes no Java.

Contexto Técnico

No JDBC, existem três principais formas de executar instruções SQL dependendo do objetivo da operação:

  1. Comandos de Seleção (DQL): Comandos como SELECT recuperam dados. O método utilizado é executeQuery(), que retorna um objeto ResultSet.
  2. Comandos de Manipulação (DML): Comandos como INSERT, UPDATE e DELETE alteram o conteúdo do banco. O método utilizado é executeUpdate().
  3. Comandos Gerais: O método execute() pode ser usado para qualquer tipo, mas é menos específico.

Análise Detalhada

Para efetivar um comando DML (Data Manipulation Language), como Insert ou Delete, o Java precisa saber que queremos alterar dados e não apenas lê-los.

  • Método executeUpdate(): É o método correto para operações de escrita/alteração. Ele executa a instrução SQL e retorna um valor inteiro (int) representando o número de linhas afetadas (ex: quantos registros foram inseridos ou deletados).

Vamos analisar por que as outras alternativas estão incorretas neste contexto específico:

OpçãoFunção RealPor que não é a resposta?
A prepareStatementPrepara uma instrução SQL pré-compilada.Cria o objeto de execução, mas não executa a alteração imediatamente. Você ainda precisaria chamar executeUpdate nele.
B forNameCarrega dinamicamente uma classe (geralmente o Driver).Usado para inicializar a conexão (Class.forName(...)), não para executar SQL.
D getConnectionEstabelece a conexão com o banco de dados.É o primeiro passo para acessar o banco, não para enviar comandos SQL específicos.

Conclusão

Quando desejamos realizar uma modificação nos dados armazenados (como adicionar um novo registro com INSERT ou remover um com DELETE), utilizamos o método executeUpdate associado à instrução SQL preparada.

Portanto, a alternativa correta é a C.

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.