Mostrar os Dados de um Consulta

Estou fazendo uma consulta para me trazer todos os dados desde que a marca seja Ex: ‘Nike’;
A consulta é realizada mas não sei como mostrar os dados, como faço isso ? EX: chamar e mostrar em um jtable

Código:

(select * from produtoss where marca = 'Nike';)
select * from produtos where marca like '%NIKE%'

Vc tem que pegar o valor da coluna através de um ResultSet que vai receber sua consulta feita
pelo o Statement

//o Statement deve receber sua conexão do banco
Statement st = connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
ResultSet rs =  st.executQuery("select * from produtoss where marca = 'Nike'");

//cria um modelo da sua JTable para que vc possa adiconar os produtos encontrados
DefaultTableModel modelo = (DefaultTableModel) JTable1.getModel();
modelo.setRowCount(0);

//Vc deve criar um array com a qtde de colunas que tem a sua JTable e depois fazer as colunas receber os seus respectivos valores 
String[] linha = new String[2];
while (rs.next()) 
{
  //O rs.getString("") ; retorna o valor que esta no seu banco de dados deve-se passa como parametro o nome da COLUNA que esta no seu 
  banco de dados

  linha[0] = rs.getString("NOME");
  linha[1] = rs.getString("PRECO");

  // o addRow adiciona uma nova linha na sua JTable com os valores que foram pegos na sua consulta
  modelo.addRow(linha);
}

Bom é isso espero que isto te ajude

Depois posta aqui dizendo se deu certo
flw

Acho que você deveria pesquisar um pouco sobre JDBC.

http://www.guj.com.br/article.show.logic?id=7

esse foi o primeiro que achei, mas concerteza tem vários mais completos.

Tentei assim só que ele da o erro resultser não esta posicionado corretamente o que será?

[code] [code]public void chama()
{

   try {   
Class.forName("org.postgresql.Driver").newInstance();   
Connection conn = DriverManager.getConnection("jdbc:postgresql://localhost/estoque:","postgres","1212");   

Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
ResultSet rs = stmt.executeQuery(“select * from produtoss where marca = ‘Nike’”);

//cria um modelo da sua JTable para que vc possa adiconar os produtos encontrados
jTable1.getColumnModel().getColumn(0).setPreferredWidth(20);
jTable1.getColumnModel().getColumn(1).setPreferredWidth(50);
jTable1.getColumnModel().getColumn(2).setPreferredWidth(50);
jTable1.getColumnModel().getColumn(3).setPreferredWidth(15);
jTable1.getColumnModel().getColumn(4).setPreferredWidth(25);
jTable1.getColumnModel().getColumn(5).setPreferredWidth(25);
jTable1.getColumnModel().getColumn(6).setPreferredWidth(50);
jTable1.getColumnModel().getColumn(7).setPreferredWidth(25);
jTable1.getColumnModel().getColumn(8).setPreferredWidth(30);
jTable1.getColumnModel().getColumn(9).setPreferredWidth(50);
jTable1.getColumnModel().getColumn(10).setPreferredWidth(50);
jTable1.getColumnModel().getColumn(11).setPreferredWidth(50);
DefaultTableModel modelo = (DefaultTableModel) jTable1.getModel();
modelo.setRowCount(0);

//Vc deve criar um array com a qtde de colunas que tem a sua JTable e depois fazer as colunas receber os seus respectivos valores
String[] linha = new String[2];
while (rs.next())
{
modelo.addRow(new Object[]{carac.resultset.getString(“codigo”),carac.resultset.getString(“codp”),carac.resultset.getString(“marca”),carac.resultset.getString(“modelo”),carac.resultset.getString(“numero”),carac.resultset.getString(“cor”),carac.resultset.getString(“hora”),carac.resultset.getString(“dat”),carac.resultset.getString(“quant”),carac.resultset.getString(“precors”),carac.resultset.getString(“custcompra”),carac.resultset.getString(“lucro”)});
rs.next();
}

//O rs.getString("") ; retorna o valor que esta no seu banco de dados deve-se passa como parametro o nome da COLUNA que esta no seu

linha[0] = rs.getString(“codigo”);
linha[1] = rs.getString(“marca”);
linha[2] = rs.getString(“modelo”);
linha[3] = rs.getString(“numero”);
linha[4] = rs.getString(“cor”);
linha[5] = rs.getString(“dat”);
linha[6] = rs.getString(“locall”);
linha[7] = rs.getString(“quant”);
linha[8] = rs.getString(“precors”);
linha[9] = rs.getString(“codp”);
linha[10] = rs.getString(“descri”);
linha[11] = rs.getString(“fornec”);

// o addRow adiciona uma nova linha na sua JTable com os valores que foram pegos na sua consulta
modelo.addRow(linha);

   }
   catch(Exception erro)
   {
       JOptionPane.showMessageDialog(null,"Erro"+erro);
   }
 }  

}[/code]

Bom um erro que eu vi aqui foi esse

String[] linha = new String[2]; 

Vc deve instaciar com 12 pelo que eu vi
vc quer pegar o valor das 12 colunas do seu banco de dados

e eu acredito que isso aqui tb não possa ser feito inclusive dentro do while!

 modelo.addRow(new Object[]{carac.resultset.getString("codigo"),carac.resultset.getString("codp"),carac.resultset.getString("marca"),carac.resultset.getString("modelo"),carac.resultset.getString("numero"),carac.resultset.getString("cor"),carac.resultset.getString("hora"),carac.resultset.getString("dat"),carac.resultset.getString("quant"),carac.resultset.getString("precors"),carac.resultset.getString("custcompra"),carac.resultset.getString("lucro")});  
                   rs.next();  
          }   

Oque deve ficar dentro do while é somente isso:

   linha[0] = rs.getString("codigo");     
   linha[1] = rs.getString("marca");   
   linha[2] = rs.getString("modelo");  
   linha[3] = rs.getString("numero");  
   linha[4] = rs.getString("cor");  
   linha[5] = rs.getString("dat");  
   linha[6] = rs.getString("locall");  
   linha[7] = rs.getString("quant");  
   linha[8] = rs.getString("precors");  
   linha[9] = rs.getString("codp");  
   linha[10] = rs.getString("descri");  
   linha[11] = rs.getString("fornec");  

É isso ai Deu Certo Só ocorreu um pequeno problema (eu tenho 2 cadastro Nike ele esconde o promeiro e mostra
só um o que faço?)

Verifica se seu While esta dessa maneira:

 while (rs.next())   
 {  
   linha[0] = rs.getString("codigo");     
   linha[1] = rs.getString("marca");   
   linha[2] = rs.getString("modelo");  
   linha[3] = rs.getString("numero");  
   linha[4] = rs.getString("cor");  
   linha[5] = rs.getString("dat");  
   linha[6] = rs.getString("locall");  
   linha[7] = rs.getString("quant");  
   linha[8] = rs.getString("precors");  
   linha[9] = rs.getString("codp");  
   linha[10] = rs.getString("descri");  
   linha[11] = rs.getString("fornec");
   modelo.addRow(linha); 
 }   

Vc tem que atribuir os valores dentro do WHILE
se tiver fora ele so vai pegar 1 valor mesmo
se tiver dentro do while ele vai pega tudo que foi encontrado para a consulta

E caso mesmo assim não esteja voltando tudo verifica a sua consulta
o banco de dados é case sensitive tem que se tratar isto
por exemplo se tiver gravado Nike e vc procurar por nike
ele nao vai achar
da uma olhada nisto!

Acontece que ele chama todos os dados , só que ele esconde um ou seja o primeiro .Ex: Ele Chama 5 linhas e mostra as quatro últmas linhas. (a linha 1 ele esconde) e mostra a linhas 2,3,4,5

Posta seu codigo atual!