Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

Você está aqui: Java ::: Java + Bancos de Dados ::: ResultSet

Entenda e aprenda a usar a interface ResultSet em suas aplicações Java + Banco de Dados

Quantidade de visualizações: 8597 vezes
Um objeto da interface ResultSet, do pacote java.sql, representa um conjunto de dados em formato tabular, retornado, em geral, como resultado de uma instrução SQL do tipo SELECT em um banco de dados.

As superinterfaces desta interface são AutoCloseable e Wrapper. Suas sub-interfaces mais conhecidas são CachedRowSet, FilteredRowSet, JdbcRowSet, JoinRowSet, RowSet, SyncResolver e WebRowSet.

Um objeto ResultSet mantém um cursor que aponta para seu registro atual de dados. Inicialmente o cursor é posicionado antes do primeiro registro. O método next() move o cursor para o próximo registro. Quando o método next() não consegue mover o cursor para o próximo registro (por estarmos já no fim do result set) ele retorna false, o que facilita seu uso dentro de um laço while que percorre todos os registros do ResultSet.

Um objeto ResultSet padrão não permite atualização de seus dados e possui um cursor que se move somente para a frente. Dessa forma, podemos percorrer seus dados somente uma vez e somente do primeiro para o último registro. É possível criar objetos ResultSet que podem ser percorridos mais de uma vez e em ambas as direções (para frente e para trás) e que permitem atualizações dos dados. Veja mais dicas nesta seção para saber mais sobre estas possibilidades.

Considere a seguinte tabela MySQL chamada "livros":

Field    Type               Null   Key    Default   Extra
id       int(10) unsigned   NO     PRI    -         auto_increment
titulo   varchar(45)        NO     -      -         -
autor    varchar(45)        NO     -      -         -
preco    double             NO     -      -         -
Podemos percorrer todos os registros desta tabela usando o seguinte código:

package estudosjavamysql;

import java.sql.*;

public class EstudosJavaMySQL{
  public static void main(String[] args){
    // strings de conexão
    String databaseURL = "jdbc:mysql://localhost/estudos";
    String usuario = "root";
    String senha = "osmar1234";
    String driverName = "com.mysql.jdbc.Driver";
    
    try {
      Class.forName(driverName).newInstance();
      
      // vamos obter um objeto Connection
      Connection conn = DriverManager.getConnection(databaseURL, usuario, senha);
      
      // vamos obter um Statement para disparar instruções SQL no banco de dados
      Statement stmt = conn.createStatement();
      
      // vamos disparar a consulta e obter os resultados em um ResultSet
      ResultSet rs = stmt.executeQuery("SELECT * FROM livros");

      // finalmente vamos percorrer os dados retornados
      while (rs.next()) {
        int id = rs.getInt("id");
        String titulo = rs.getString("titulo");
        String autor = rs.getString("autor");


Ao executarmos este código teremos um resultado parecido com:

Código: 1
Título: Java - Como Programar
Autor: M. D. Deitel
Preço: 210.3

Código: 9
Título: Desenvolvendo Aplicações Web Usando JSP
Autor: Osmar J. Silva
Preço: 120.99


Veja que, quando disparamos este código, a variável rs guardará um referência a uma classe que implementa a interface ResultSet. No Sun Microsystem's JDBC Driver for MySQL, esta classe se chama ResultSetImpl.java e está no pacote com.mysql.jdbc.

Link para compartilhar na Internet ou com seus amigos:

Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 21 usuários muito felizes estudando em nosso site.