Hallo Leute
Versuche momentan verzweifelt aus meiner Tabelle Daten in einen JTable zu übertragen.
Problem ist der SQL Syntax und dann die Weiterverarbeitung durch den Java-SQL-Treiber. Ich möchte gerne aus meiner Tabelle (26 Columns) lediglich 3 Columns (kontaktnr, vorname, nachname) in meinen JTable übertragen.
Zugeben muss ich jedoch das ResultSet auch noch nicht so ganz verstanden habe.
Wieso "while(rs.next())"? Die while-Schleife wurde bei mir bis jetzt immer nur 1 mal ausgeführt und ich musste zusätzlich dann in der Schleife weitere Schleifen verwenden. Ein Beispiel:
Das klappt soweit wunderbar, aber wofür das "while(rs.next())"? Habe mich lediglich an Tutorials gehalten da ich vorher noch nie mit der Java-SQL-Schnittstelle gearbeitet habe.
Daher hab ich auch keine Ahnung wie ich die Daten im ResultSet (falls ich sie denn jetzt auslese) in ein Object[][] bekomme. Desweiteren frage ich mich wie ich das Object[][] anlegen soll wenn ich nicht weiß wie viele Einträge die Tabelle hat.
Versucht habe ich bereits folgendens:
Jedoch kamen bei getRow merkwürdige Werte raus (was aber natürlich auch an der Datenbank liegen kann da diese momentan viel zu Testzwecken missbraucht wird, falls das der richtige Weg war bitte kurze Rückmeldung).
Der SQL-Befehl den ich verwendet habe lautet
Jedoch weiß ich von jetzt an nicht weiter. Arbeite man nun mit ResultSetMetaData?
Mfg Rhymen
Versuche momentan verzweifelt aus meiner Tabelle Daten in einen JTable zu übertragen.
Problem ist der SQL Syntax und dann die Weiterverarbeitung durch den Java-SQL-Treiber. Ich möchte gerne aus meiner Tabelle (26 Columns) lediglich 3 Columns (kontaktnr, vorname, nachname) in meinen JTable übertragen.
Zugeben muss ich jedoch das ResultSet auch noch nicht so ganz verstanden habe.
Wieso "while(rs.next())"? Die while-Schleife wurde bei mir bis jetzt immer nur 1 mal ausgeführt und ich musste zusätzlich dann in der Schleife weitere Schleifen verwenden. Ein Beispiel:
Java:
public String[] loadKunde(String searchField, String userInput) {
String[] string = new String[26];
try {
con = DriverManager.getConnection("jdbc:hsqldb:" + currentDBPath + ";ifexists=true", "sa", "");
stmt = con.createStatement();
rs = stmt.executeQuery("select * from " + currentTableName + " where " + searchField + " = '" + userInput + "';");
while (rs.next()) {
for (int i = 0; i < string.length; i++) {
string[i] = rs.getString(i + 1);
}
}
} catch (SQLException ex) {
Logger.getLogger(Model.class.getName()).log(Level.SEVERE, null, ex);
} finally {
exit();
return string;
}
}
Das klappt soweit wunderbar, aber wofür das "while(rs.next())"? Habe mich lediglich an Tutorials gehalten da ich vorher noch nie mit der Java-SQL-Schnittstelle gearbeitet habe.
Daher hab ich auch keine Ahnung wie ich die Daten im ResultSet (falls ich sie denn jetzt auslese) in ein Object[][] bekomme. Desweiteren frage ich mich wie ich das Object[][] anlegen soll wenn ich nicht weiß wie viele Einträge die Tabelle hat.
Versucht habe ich bereits folgendens:
Java:
Object[][] data = new Object[rs.getRow()][3];
Der SQL-Befehl den ich verwendet habe lautet
Java:
rs = stmt.executeQuery("SELECT kontaktnr, vorname, nachname FROM testtable;");
Mfg Rhymen