Erro numberformatexception.java:65 NetBeans

PostgreSQL

Oracle

Java

11/03/2015

e ai pessoal

estou fazendo a soma de um dado do banco Postegresql
e quero importar o resultado no jTextField do NetBeans
estou usando este codigo:

public void cadastrarVenda() {
String sql = "Select SUM (abacaxi) from janeiro ?";
try {
pst = conecta.prepareStatement(sql);

pst.setInt(1, Integer.parseInt(txtAbacaxi.getText()));

ResultSet rs = pst.executeQuery(sql);

while (rs.next()){
int soma = rs.getInt(0);
jTextField.setText(String.valueOf(soma));
}

} catch (SQLException error) {
JOptionPane.showMessageDialog(null, error);
}

}

ai quando executo aparece o seguinte erro
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: ""

at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)

ja tentei os formatos no banco de dados integer e numeric, nao sei se o formado do banco influencia


mas como posso resolver isto??
Caio

Caio

Curtidas 0

Respostas

David Coelho

David Coelho

11/03/2015

Pelo que parece, o campo txtAbacaxi está branco. Logo ele não consegue converter branco para integer.
Antes de chamar o método Integer.parse(), verifique se o campo está em branco.
GOSTEI 0
Caio

Caio

11/03/2015

Realmente coloquei o zero no campo e deu certo

mas ele segue com o seguinte erro

org.postegresql.util.PSQLException.Nao pode utilizar metodos de consulta que pegam uma consulta de um comando preparado.

este erro ocorre utilizando o codigo citado acima



como resolver este problema::??
GOSTEI 0
David Coelho

David Coelho

11/03/2015

Outra coisa, o primeiro campo do ResultSet é 1 e não 0.
Logo, na linha int soma = rs.getInt(0); mude para int soma = rs.getInt(1);
GOSTEI 0
Caio

Caio

11/03/2015

Deu certo Muito Obrigado drc

so mais uma dica se possivel

existem varias colunas
como posso usar o comando sum para varias colunas
por exemplo
Select SUM (abacaxi, Acerola)
para somar individualmente cada coluna e mostrar o seu resultado conforme foi feito para somente uma coluna

e possivel?
GOSTEI 0
David Coelho

David Coelho

11/03/2015

Disponha, Caio.

Quanto ao sum.. tente fazer select sum(abacaxi), sum(acerola) from janeiro.
Eu nao tenho como testar aqui.. mas deveria funcionar..

Abs
GOSTEI 0
Caio

Caio

11/03/2015

Muito obrigado DRC
Esta tabela deu certo

Saberia me dizer como faco para somar
Duas ou mais tabelas?
as tabelas tem as mesmas colunas so altera o nome da tabelas
Queria somar as tabelas para para fazer o fechamento anual das vendas

Poderia me ajudar dando um exemplo? ?
GOSTEI 0
POSTAR