Delete em java

5 respostas
F

Galera me ajudem estou tentando fazer um delete em java, porém o comando AND e OR não funcionam.

String SQL = "DELETE FROM login WHERE id_senha =? and nome_login=?";
			
ps = conn.prepareStatement(SQL);
			
ps.setString(1, cadastro.getSenha());
ps.setString(2, cadastro.getLogin());
ps.executeUpdate();

esse é o delete. Quero excluir o login e senha mas to tendo dificuldade. coloquei o login como chave primaria, eu coloquei um campo com o nome do login e a senha pra digitar e clicar no botão excluir ai passa para a class DAO.

5 Respostas

J

Sugiro que você use o CMD caso seja Windows que voce usa, para fazer os testes. Geralmente quando você exclui uma PK, nao é necessario especificar mais nada relacionado ao campo que você queira excluir. No seu caso, se você quer excluir um usuario, pode fazer o where somente com o login, sendo PK ele excluirá todos os dados dessa PK.

No cmd você podia ir testando:

DELETE FROM login WHERE  nome_login=?";
DELETE * FROM login WHERE  nome_login=?";
DELETE nome_login FROM login WHERE  nome_login=?";
F

então, consegui deletar com o AND. Eu quero fazer assim. o usuario digita o login e a senha. se ele digitar o login errado apresenta o erro e a senha a mesma coisa. Nisso quero que o programa verifica no banco de dados se existe realmente a senha se existir ele excluir se não da erro…

L

Não parece ser um problema de and ou or… vc não colocou o login como chave estrangeira em outra tabela? Nesse caso, ele não iria deixar excluir pelo vínculo existente… seria legal vc mostrar o erro. Roda a query no banco e vê se deleta normalmente

D

Qual banco de dados você esta usando?

W

Experimente isso:

DELETE FROM login WHERE id_senha =?1 and nome_login=?2

Criado 4 de julho de 2016
Ultima resposta 4 de jul. de 2016
Respostas 5
Participantes 5