SQLite Java: selecione dados

Resumo : neste tutorial você aprenderá como consultar dados de uma tabela no banco de dados SQLite usando Java JDBC.

Para consultar dados de uma tabela, você usa as seguintes etapas:

  1. Primeiro, crie um Connectionobjeto para conectar-se ao banco de dados SQLite .
  2. A seguir, crie uma instância da Statementclasse do Connectionobjeto.
  3. Em seguida, crie uma instância da ResultSetclasse chamando o executeQuerymétodo do Statement objeto. O executeQuery()método aceita uma instrução SELECT .
  4. Depois disso, percorra o conjunto de resultados usando o next()método do ResultSetobjeto.
  5. Por fim, use o método get* do ResultSetobjeto, como getInt(), getString(), getDouble(), etc., para obter os dados em cada iteração.

O programa a seguir seleciona todas as linhas da warehousestabela.

package net.sqlitetutorial;

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

/**
 *
 * @author tutorials.acervolima.com
 */
public class SelectApp {

    /**
     * Connect to the test.db database
     * @return the Connection object
     */
    private Connection connect() {
        // SQLite connection string
        String url = "jdbc:sqlite:C://sqlite/db/test.db";
        Connection conn = null;
        try {
            conn = DriverManager.getConnection(url);
        } catch (SQLException e) {
            System.out.println(e.getMessage());
        }
        return conn;
    }

    
    /**
     * select all rows in the warehouses table
     */
    public void selectAll(){
        String sql = "SELECT id, name, capacity FROM warehouses";
        
        try (Connection conn = this.connect();
             Statement stmt  = conn.createStatement();
             ResultSet rs    = stmt.executeQuery(sql)){
            
            // loop through the result set
            while (rs.next()) {
                System.out.println(rs.getInt("id") +  "\t" + 
                                   rs.getString("name") + "\t" +
                                   rs.getDouble("capacity"));
            }
        } catch (SQLException e) {
            System.out.println(e.getMessage());
        }
    }
    
   
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        SelectApp app = new SelectApp();
        app.selectAll();
    }

}Linguagem de código:  Java  ( java )

O seguinte ilustra a saída do programa:

Exemplo SQLite Java SELECT

Consultando dados com parâmetros

Para usar parâmetros na consulta, você usa o PreparedStatement objeto. Por exemplo, o método a seguir seleciona o armazém cuja capacidade é maior que a capacidade especificada.

    /**
     * Get the warehouse whose capacity greater than a specified capacity
     * @param capacity 
     */
    public void getCapacityGreaterThan(double capacity){
               String sql = "SELECT id, name, capacity "
                          + "FROM warehouses WHERE capacity > ?";
        
        try (Connection conn = this.connect();
             PreparedStatement pstmt  = conn.prepareStatement(sql)){
            
            // set the value
            pstmt.setDouble(1,capacity);
            //
            ResultSet rs  = pstmt.executeQuery();
            
            // loop through the result set
            while (rs.next()) {
                System.out.println(rs.getInt("id") +  "\t" + 
                                   rs.getString("name") + "\t" +
                                   rs.getDouble("capacity"));
            }
        } catch (SQLException e) {
            System.out.println(e.getMessage());
        }
    }Linguagem de código:  Java  ( java )

Para encontrar os armazéns cujas capacidades são superiores a 3600, use o getCapacityGreaterThan()método a seguir:

SelectApp app = new SelectApp();
app.getCapacityGreaterThan(3600);Linguagem de código:  Java  ( java )

A seguir está a saída:

Exemplo de consulta Java SQLite com parâmetros

Neste tutorial, você aprendeu como consultar dados da tabela no banco de dados SQLite a partir de um programa Java.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *