FC ConcursosFC Concursos

Questão FC373262

Considere o bloco de código, abaixo, presente um uma aplicação Java, em condições ideais. String driver, url, usuario, senha, sql; Connection conecta; PreparedStatement st; driver

Linguagens de Programação

FCC · 2022

Considere o bloco de código, abaixo, presente um uma aplicação Java, em condições ideais.

 

String driver, url, usuario, senha, sql;

Connection conecta;

PreparedStatement st; driver = "com.mysql.cj.jdbc.Driver";

url = "jdbc:mysql://localhost:3306/bd";

usuario = "root";

senha = "aB12c56DY";

sql = "SELECT * FROM users WHERE usuario=? AND senha=?";

Class.forName(driver);

conecta = DriverManager.getConnection(url,usuario,senha);

st = conecta.prepareStatement(sql);

st.setString(1, txtUsuario.getText());

st.setString(2, pswSenha.getText());

 

Para executar o comando SQL SELECT na tabela users do banco de dados bd e armazenar o retorno em rs deve-se utilizar, na próxima linha do bloco de código, o comando

  1. RecordSet rs = st.executeSelect();
  2. ResultSet rs = st.executeQuery();
  3. ResultSet rs = st.execute();
  4. ResultSet rs = st.executeSelect();
  5. RecordSet rs = st.executeQuery();
Mostrar resposta e comentário

Gabarito

B

Comentário do professor

A linha correta ResultSet rs = st.executeQuery(); executa a consulta SQL preparada em st e retorna um objeto ResultSet contendo as linhas do SELECT.

Como st é um PreparedStatement com parâmetros já ajustados via setString, chama-se executeQuery() sem argumentos — o comando compilado será enviado ao banco e o resultado será recebido em rs.

O ResultSet permite iterar pelos registros (ex.: while (rs.next())) e obter colunas por nome ou índice. Lembre-se de tratar exceções (SQLException) e fechar recursos (rs, st, conecta) após o uso para evitar vazamentos de conexão.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo