Como realizar um Select e Insert turbulento!

3 respostas Resolvido
java-semysql
K
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?

3 Respostas

Jhonatan_Moreira
Solucao aceita

"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.

staroski
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
K

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.

Criado 5 de maio de 2018
Ultima resposta 8 de mai. de 2018
Respostas 3
Participantes 3