GARANTIR DESCONTO

Fórum Verificar se um dado existe no banco #569617

10/12/2011

0

Preciso verificar se um dado existe no banco de dados através do java. Se ele existir executa um comando select e mostra em uma JTable, mas se não existir tem que dar uma msg de erro e não abrir um tabela em branco, como está acontecendo. Ai vai uma parte do código para melhor entendimento:
confirmar.addActionListener(
				new ActionListener(){
					public void actionPerformed(ActionEvent e) {
						ConsumoIndividual c = new ConsumoIndividual(soma);
						c.buscaTabela("SELECT p.nome as
 'Produto Consumido', p.preco_venda as 'Preco unitario', s.quantidade as
 'Quantidade', round (preco_venda*quantidade) as 'Preco Total' FROM
 produto p INNER JOIN (consumo s join cliente c on c.codigo =
 s.cod_cliente) ON p.codigo = s.cod_produto where c.codigo 
="+codigo0.getText());
dispose();
						}});
codigo0 é o textfield que pede pra pessoa digitar o código que deve ser procurado se existe um cliente no banco com esse código. [/code]
Ingrid

Ingrid

Responder

Posts

10/12/2011

Marcos Wellington

vc pode usar o equals para ver se está em branco o campo...exemplo:
if (campo.setText.equals("")){
//select e popula a jtable
}else{
//erro
}
Responder

Gostei + 0

10/12/2011

Douglas Eric

[quote="graweb"]vc pode usar o equals para ver se está em branco o campo...exemplo:
if (campo.setText.equals("")){
//select e popula a jtable
}else{
//erro
}
primeiro: Esse código está errado e não compilaria. Assumindo que "campo" é um JTextField, o código certo seria
if (campo.getText().equals(""))
segundo: Isso não tem nada a ver com o que ele perguntou! saber se um dado existe em um banco é fácil. por exemplo, quer saber se a tabela cliente tem um nome "Graweb"
SELECT nome FROM cliente WHERE nome = 'Graweb'
se o nome não existir, vai retornar um ResultSet vazio
ResultSet rs = //faz a pesquisa acima
if(rs.next()){
   //existe
}else{
   //não existe
}
Responder

Gostei + 0

10/12/2011

Douglas Eric

Consegui resolver, obrigada :) Na verdade já usava o while(res.next()) varias vezes no meu programa mas não tinha percebido que isso iria arrumar o que eu precisava!
Responder

Gostei + 0

10/12/2011

Douglas Eric

[quote="ingrid.magroski"]Consegui resolver, obrigada :) Na verdade já usava o while(res.next()) varias vezes no meu programa mas não tinha percebido que isso iria arrumar o que eu precisava!
O while enquanto tiver, um resultado, ele vai continuar rodando, o if, ele retorna, digamos um "true" e um "false", que eu acho melhor para ser utilizados nesses casos de verificação de cadastros, etc..
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar