Fehlerhafte Datenbankabfrage

Br4ve

Bekanntes Mitglied
Hallo,
Ich habe ein Problem mit einer Datenbankabfrage, obwohl es wohl eigentlich viel mehr ein Problem der Schleife zur Befüllung der Liste mit den Datenbankergebnissen ist vermute ich.

hier mein Code:

Java:
public static ArrayList<ArrayList<String>> getParg(String psid,String db){
	ArrayList<ArrayList<String>> listemain = new ArrayList<ArrayList<String>>();
	ArrayList<String> liste = new ArrayList<String>();
	ResultSet rs = null;
	PreparedStatement pstmt;
	Connection con = datenbankZugriff.dbverbindung.getConnection(db);
	
	try {
		pstmt = con.prepareStatement("select argument.argname,argument.description,possibleargvalue.displayvalue " +
				"from processstep,processstepargvalue,argument,toolrelease, possibleargvalue where " +
				"processstepargvalue.argid = argument.argid and possibleargvalue.argid = argument.argid and " +
				"processstepargvalue.value = possibleargvalue.value and processstep.psid = processstepargvalue.psid " +
				"and argument.treleaseid = toolrelease.treleaseid and processstep.psid = ? ");
		pstmt.setString(1,  psid);
		rs = pstmt.executeQuery();
		while(rs.next()){
			
			liste.clear();
			liste.add(rs.getString(1));
			liste.add(rs.getString(2));
			liste.add(rs.getString(3));
			
			listemain.add(liste);
		}
		
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
	
	
	
	return listemain;
	
}

Es geht hierbei um eine Tabelle mit 3 Spalten, diese 3 Spalten möchte ich in "liste" speichern und die einzelnen Zeilen der Tabelle dann sozusagen in "listemain". Vermutlich liegt das Problem bei "liste.clear()" ich hatte das zuvor ganz am ende der while-Schleife, erhielt dann jedoch eine index out of bounds exception beim ausführen. In dieser Anordnung jedoch erhalte ich in listemain 13 Einträge mit den Ergebnissen der letzten Spalte. Wo liegt mein Fehler?
 
M

MiDniGG

Gast
Mach statt
Java:
liste.clear();
einfach
Java:
liste = new ArrayList<String>();

Dadurch fügst Du einfach eine neue Instanz der Liste der main-Liste hinzu. Ansonsten löscht Du nur die bisherigen Einträge und fügst neue hinzu.
Also es wird immer die gleiche Liste hinzugefügt, nur dass sich eben die Daten ändern (bzw. mehr werden).
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Fehlerhafte SQL Query Datenbankprogrammierung 4
S MySQL jPMdbc&MySQL = Fehlerhafte Umlaute in JTable Datenbankprogrammierung 0
B fehlerhafte PostgreSQL-Verbindung Datenbankprogrammierung 4
L Datenbankabfrage mit loop Datenbankprogrammierung 17
N MySQL Datenbankabfrage oder Arraylist? Datenbankprogrammierung 2
J Datenbankabfrage / Teilmengen Datenbankprogrammierung 2
S MySQL JTable zeigt nach Datenbankabfrage eine Spalte zu viel an Datenbankprogrammierung 0
S MySQL Datenbankabfrage mit Eingabe aus Textfeld vergleichen Datenbankprogrammierung 4
C Modellierung Datenbankabfrage Datenbankprogrammierung 1
W SQL-Statement Datenbankabfrage über Yahoo Datenbankprogrammierung 0
H Oracle Datenbankabfrage ausgeben Datenbankprogrammierung 13
E MySQL Anzeige Datenbankabfrage in Textfeld o.ä. Datenbankprogrammierung 34
L Datenbankabfrage mit einer Range Datenbankprogrammierung 3
Y JDBC - Datenbankabfrage Webserver Datenbankprogrammierung 4
E H2 - Datenbankabfrage gibt NULL aus? Datenbankprogrammierung 4
H Einfache Datenbankabfrage Datenbankprogrammierung 14
S ResultSet einer Datenbankabfrage - Nullpointer Exception Datenbankprogrammierung 13
F Problem mit Datenbankabfrage Datenbankprogrammierung 7
M Problem bei einfacher Datenbankabfrage Datenbankprogrammierung 7
W Problem mit Datenbankabfrage Datenbankprogrammierung 3
S Datenbankabfrage mit Applet Datenbankprogrammierung 13
A Datenbankabfrage mit KeyListener Datenbankprogrammierung 5
C Rückgabetyp einer Datenbankabfrage Datenbankprogrammierung 12
V Datenbankabfrage in einem Textfeld ausgeben Datenbankprogrammierung 3
L einfache Datenbankabfrage ohne erstes Element Datenbankprogrammierung 2
E Nochmal eine Datenbankabfrage Frage :-o (JOIN oder so) Datenbankprogrammierung 4
R NUllPointerException bei Datenbankabfrage Datenbankprogrammierung 4
A SQL Datenbankabfrage in Array speichern Datenbankprogrammierung 3
P Datenbankabfrage MYSQL aus Applet heraus Datenbankprogrammierung 6
D Datenbankabfrage will nicht funktionieren Datenbankprogrammierung 5
C vergleichende Datenbankabfrage Datenbankprogrammierung 5
G datenbankabfrage Datenbankprogrammierung 4
A datenbankabfrage in sql mit java Datenbankprogrammierung 32
T Nochmal Datenbankabfrage Datenbankprogrammierung 6

Ähnliche Java Themen

Neue Themen


Oben