Ir ao conteúdo

Posts recomendados

Postado

Ola

   queria retornar um select count(*) em java , queria que retornasse um inteiro pois preciso fazer operações com o valor retornado.

 

public static ResultSet getQtiaLinhas() {

        Integer qtiaLinhas = 0;
        ResultSet resultado  = null;
        String sql = "select count (*) from autor_consulta";

        try {
            
            Connection conexao = Conexao.getConnection();
            Statement comando = conexao.createStatement();
            resultado = comando.executeQuery(sql);
          

        } catch (Exception e) {
            System.out.println("não foi possível contar o num de linhas" + e.getMessage());
        }

        return resultado;
    }

 

o que me retorna é isso ai :  oracle.jdbc.driver.OracleResultSetImpl@be64738

 

Obrigado ai galera

Postado

Para retornar o valor inteiro do count(*), você deve obter o valor do ResultSet. Você pode fazer isso adicionando o seguinte código dentro do try-catch:

resultado.next();
qtiaLinhas = resultado.getInt(1);

E então retornar o valor de qtiaLinhas, ao invés de resultado.

Assim:

public static int getQtiaLinhas() {

        int qtiaLinhas = 0;
        ResultSet resultado  = null;
        String sql = "select count (*) from autor_consulta";

        try {
            
            Connection conexao = Conexao.getConnection();
            Statement comando = conexao.createStatement();
            resultado = comando.executeQuery(sql);
            resultado.next();
            qtiaLinhas = resultado.getInt(1);

        } catch (Exception e) {
            System.out.println("não foi possível contar o num de linhas" + e.getMessage());
        }

        return qtiaLinhas;
    }

Lembre-se de fechar a conexão com o banco de dados ao terminar de usar.

Postado

Talvez isso ajude:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class ContadorLinha {

    public static void main(String[] args) {
        ConnectionFactory factory = new ConnectionFactory();

        String sql    = "SELECT COUNT(*) FROM tabela;";
        int    linhas = 0;

        try (
                Connection connection = factory.open();
                PreparedStatement statement = connection.prepareStatement(sql)
        ) {
            ResultSet resultSet = statement.executeQuery();

            if (resultSet.next()) {
                linhas = resultSet.getInt(1);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }

        System.out.printf("Encontradas %d linhas\n", linhas);
    }

    /*
     * Essa classe NÃO funciona como está. É necessário preencher as
     * 'strings' com os valores correspondentes a URL, USUÁRIO e SENHA.
     */
    private static class ConnectionFactory {

        private final String url  = "";
        private final String user = "";
        private final String pass = "";

        public Connection open()
        throws SQLException {
            return DriverManager.getConnection(url, user, pass);
        }
    }
}

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!