Como realizar um Select e Insert turbulento!

Oi galera, Preciso realizar um Select para acesso a aplicação, porém no momento eu estou usando assim
`try {
String sql = (“SELECT login.id_login FROM Login WHERE login = ? AND senha = ? “);
stmt = con.prepareStatement(sql);
stmt.setString(1, “%”+login+”%”);
stmt.setString(2, “%”+senha+"%");
rs = stmt.executeQuery(sql);

        while (rs.next()) {
            
            int id = rs.getInt("id_login");
            System.out.println(id);
            user.setId(rs.getInt(id));

        }
        
    } catch (SQLException ex) {
        System.out.println("ERRO AO BUSCAR ID");
    }` 

Acredito que tenha erros, nesse caso o meu objetivo é fazer a consulta de usuário e retornar o id dele para que mais afrente eu possa usar esse id para criar uma lista de nomes, alguém pode me dar uma ajuda quanto a isso?

"select id,login, senha from login where login = " ’ + variavel_do_sistema_que_recebe_login + ’ " and senha = " ’ + variavel_do_sistema_que_recebe_login +’ ";

tenta assim, ai você vai pegar login e senha do banco que forem iguais a o que foi inserido no sistema, e o banco vai retornar o id senha e login.

1 curtida
String sql = (“SELECT login.id_login FROM Login WHERE login = ? AND senha = ? “);
stmt = con.prepareStatement(sql); // você já passou o sql aqui
stmt.setString(1, “%”+login+”%”);
stmt.setString(2, “%”+senha+"%");
rs = stmt.executeQuery(sql); // então não passe o sql aqui
1 curtida

Agora o problema é outro, como retornar a chave gerada quando feito o comando de inserção de valores, tipo eu preciso inserir esse id do SELECT acima e um valor nome em outra tabela, o problema é que quando vou inserir ele não retorna o id e normalmente quando faço isso da erro mesmo usando o RETURN_GENERATED_KEYS do java.