2017-12-26 11 views
1

Ich habe Hinweise darüber gelesen, aber keine scheint für mich zu arbeiten. Ich habe eine SQLite-Datenbank und mit Netbeans als meine IDE, habe ich ein Jframe, das Datensätze in einer J-Tabelle anzeigt, wobei Datensätze in aufsteigender Reihenfolge angezeigt werden. Durch Klicken auf einen Datensatz werden diese in jtextfields angezeigt.Holen Sie den nächsten Datensatz aus der SQLite-Datenbank, wenn auf die Schaltfläche geklickt wird

Ich möchte zum nächsten Datensatz in der Datenbank in aufsteigender Reihenfolge verschieben, wenn ich auf eine Schaltfläche klicke, aber es scheint nicht zu funktionieren. Was mache ich falsch?

try{ 
    String sql ="select * from Employees order by Name ASC"; 
    pst=conn.prepareStatement(sql); 
    rs=pst.executeQuery(); 

     if(rs.next()){ 

       int i = rs.getInt("ID"); 
       String idi= Integer.toString(i); 
       id.setText(idi); 
       String a = rs.getString("Name"); 
       name.setText(a); 
       String b = rs.getString("Contact"); 
       contact.setText(b); 
       String c = rs.getString("Email"); 
       email.setText(c); 
       String d = rs.getString("Residence"); 
       residence.setText(d); 
       String e = rs.getString("Job_Type"); 
       comboJob.setSelectedItem(e); 

    } 
     else { 
      rs.previous(); 
      } 

    } 
    catch(SQLException | HeadlessException ex) 
    { 
     JOptionPane.showMessageDialog(null, ex); 
    }finally{ 
      try{ 
       rs.close(); 
       pst.close(); 
      } 
      catch(Exception e){ 

      } 
     } 

Antwort

1

müssen Sie die Werte aus der Datenbank in einem Array speichern und dann über es mit Ihren iterieren (i.Vj., nächste) Taste wie

i=0; 
while(rs.next()) { 
      dataset["ID"][i]=Integer.toString(rs.getInt("ID")); 
      dataset["Name"][i]=rs.getString("EName"); 
    i++ 
      } 

Informationen angezeigt werden Sie Dataset Array wie

verwenden können
id.setText(dataset["ID"][i]); 
name.setText(dataset["EName"][i]); 

nicht überprüfte Syntax, aber die Logik ist korrekt.

+0

ok danke bro, werde es ausprobieren –

Verwandte Themen