Somar dados coluna tabela sql

08/03/2015

0

E ai pessoal,
Estou programando um controle de vendas e nao estou conseguindo finalizar

quero efetuar a soma de uma coluna de tabela do banco de dados Postegresql e mostrar estes dados em um TextField do Netbeans linguagem java
ja tentei varias formas uma delas e essa:

Select sum (nomecoluna) from nometabela


Ele efetua a soma mas porem nao consigo fazer ele aparecer em um TextField
Poderiam me ajudar???
os dados da tabela sao integer e double precision
Caio

Caio

Responder

Posts

09/03/2015

Ronaldo Lanhellas

Poste seu código, o que você já tem implementando para fazer isso ?
Responder

09/03/2015

Caio

Esta ai as duas tentativas

ja tentei assim

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

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

pst.execute();

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

}

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

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

pst.execute();


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

}
Dessas formas nao da certo
So nao consigo omplementar o codigo para mostrar no JTextField
saberia aonde estou errando e como posso resolver?
Responder

10/03/2015

Ronaldo Lanhellas

Você se perdeu um pouco na sua explicação. O seu código acima (pst.execute()) retorna o valor inteiro ? Não vi em nenhum momento você tentar setar o valor no TextField.
Responder

10/03/2015

Caio

Pois e nao citei porque nao sei como fazer
so coloquei o codigo do sql pra soma do banco que e o Select SUM(abacaxi) from janeiro
e a estrutura de como montei

o unico momento que tentei direcionar foi quando coloquei

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

Tentei isso mas nao sei como implementar mais, tentei este codigo pois assim e que eu fiz para cadastrar no banco o valor que a jtextfield recebeu, pra cadastro deu certo

o pst.execute();, e para executar a açao que o pst ta recebendo , o pst e o nome da variavel que chama para conectar com o banco sql. ( por exemplo como te falei pra cadastro da certo assim)

Ficou meio confuso mas pode me dar um exemplo do seu jeito que modifico para o meu exemplo, se caso nao entender o que te falei acima
como direciono o valor da soma no JTextField?
Responder

10/03/2015

Ronaldo Lanhellas

Tente assim:

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);
}

}
Responder

10/03/2015

Ronaldo Lanhellas

Tente assim:

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);
}

}
Responder

10/03/2015

Ronaldo Lanhellas

Tente assim:

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);
}

}
Responder

10/03/2015

Caio

Tentei mas ele da o seguinte erro
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: ""

Os valores no banco de dados estao em integer

saberia como resolver este problema?
Responder

11/03/2015

Caio

Muito bom o seu codigo Ronaldo

mas segue dando este erro numberformatexception.java:65

como resolvo??
Responder

12/03/2015

Caio

O erro que citei acima estava dando pois o campo de origem estava em branco ai coloquei o numero zero ele passou a ter este outro erro

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::??
Responder

APRENDA A PROGRAMAR DO ZERO AO PROFISSIONAL

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar