Questão nº 49

Questão de Tecnologia da Informação · CESGRANRIO BASA 01/2024 (nº 49)

CESGRANRIO2024Técnico Científico - Área de Formação: Tecnologia da InformaçãoTecnologia da Informação
Gabarito: Cver comentário ↓

Um desenvolvedor está utilizando JDBC (Java Database Connectivity) para interagir com um banco de dados e obteve uma variável rs com a linha de código:

`rs = java.sql.DriverManager.executeQuery("SELECT * FROM sua_tabela");`

Considerando-se esse contexto, qual das seguintes linhas de código mostra corretamente como avançar a posição do cursor quando é necessário obter o próximo registro?

Resposta comentada

Gabarito Alternativa C

O ResultSet no JDBC é como um "cursor" que aponta para uma linha do resultado da consulta. Para ler cada registro, você precisa mover esse cursor para a próxima linha usando o método next(), que retorna true se existir uma linha e false quando não houver mais registros. O DriverManager não tem método executeQuery (isso é do Statement), mas o foco da questão é o método de navegação.

  • (A) Incorreta: moveNext() não existe na API JDBC; é um nome genérico de outras linguagens (como C#), mas não do Java.
  • (B) Incorreta: fetchNext() não é um método do ResultSet; a API usa next() para navegação, e fetch é usado internamente para buscar lotes de dados.
  • (C) Correta: rs.next() é o método oficial da interface java.sql.ResultSet que move o cursor para a próxima linha, retornando boolean (true se houver registro, false se chegou ao fim).
  • (D) Incorreta: getNext() não existe; métodos get* no JDBC são usados para obter valores de colunas (ex: getString, getInt), não para mover o cursor.
  • (E) Incorreta: advance() não é um método do ResultSet; a nomenclatura correta da API Java é next(), e "advance" seria uma tradução literal que não se aplica.

Armadilha da banca: A pegadinha está em alternativas como moveNext() e fetchNext(), que parecem intuitivas (e existem em outras tecnologias), mas o candidato precisa lembrar que a API Java tem um padrão próprio: next() é o único método de navegação do ResultSet. Quem decora nomes de outras linguagens ou traduz literalmente cai na letra A ou B.

Fonte: CESGRANRIO BASA 01/2024 Técnico Científico - Área de Formação: Tecnologia da Informação (Caderno Prova B). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho