Campo vazio no PostgreSQL

4 respostas
M

Olá pessoal!
Estou desenvolvendo um sistema desktop e utilizando o banco de dados Postgre. Existem campos que nem sempre são preenchidos, ficando estes vazios. Preciso fazer um teste para saber se o campo é vazio, mas usando null não dá certo. Gostaria de saber como é o teste para campo vazio, pois no Postgre quando não é adicionado nenhum valor ao campo ele põe uma “marca” para dizer que não foi preenchido.

Alguém pode ajudar?!
Obrigada!

4 Respostas

L

oi, acho que não entendi tua pergunta direito, porque eu também uso o PostegreSQL e em qualquer select que retorne um campo vazio ele me traz null… :???:

talvez se você usar o coalesce…

falow!

M

Realmente minha pergunta ficou esquisita. Vou dar um exemplo:

if(cj.getDesconto() != null){ totalAtacado +=((((Produto)cbDescricao.getSelectedItem()).getPrecoAtacado()) * (Integer.parseInt(tfQuantidade.getText()) * (0.01 * (100 - Float.parseFloat(cj.getDesconto()))))); }else totalAtacado +=((((Produto)cbDescricao.getSelectedItem()).getPrecoAtacado()) * (Integer.parseInt(tfQuantidade.getText())));

Quando pergunto no if se o desconto é diferente de null e o campo não está preenchido, ou seja, está apenas com a ‘marca’ que o postgre insere no banco como campo não preenchido ele não retorna null e dá erro, agora se eu apago essa marca no banco dá certo e ele retorna null. Gostaria de saber se existe uma outra forma de testar no java para campo vazio.

Espero ter sido clara.
Obrigada

F

Estranho… ele deveria vir nulo… acho q na hora que vc salva o formulário q contem este campo, a aplicação está passando uma String vazia, retornada, provavelmente, de um TextField vazio…
mas em todo caso, pelo q percebi esse campo Desconto é uma String, q vem vazia, certo? dae assim ele vai gerar Exceção mesmo, qdo tentar fazer o parseFloat.

neste caso, use, alem do getDeconto() != null, use tbm um !getDesconto().equals("")…

if(cj.getDesconto() != null && !cj.getDesconto().equals(""))

O .equals compara o valor das Strings… neste caso, verifica se ela está vazia.

M

Obrigada pela dica, faroeste caboclo!
Deu certo!

Criado 25 de agosto de 2006
Ultima resposta 25 de ago. de 2006
Respostas 4
Participantes 3