Veröffentlicht 29. April 200223 j Hallo, ich habe eine problem mit der SQL-Abfrage unter JAVA. Und zwar: //SQL Abfrage starten { StringBuffer sql = new StringBuffer(256); sql.append("SELECT * "); sql.append("FORM Table"); ResultSet resultSet = statement.executeQuery(sql.toString()); while (resultSet.next()) { String test = resultSet.getString(1); System.out.println(test); } } ergibt Fehler mit der Meldung: cannot resolve symbol symbol : variable statement location: class DB.DBAuslesen ResultSet resultSet = statement.executeQuery(sql.toString()); woran liegt bitte der Fehler! Bitte ganz schnell Antworten!! Danke Gruss Chaos2k
29. April 200223 j Original geschrieben von Chaos2k ... sql.append("FORM Table"); ... Spontan würde ich sagen du hast da einen Tippfehler. Da müsste doch FROM Table stehen, oder? Redfox
29. April 200223 j Hallo, Original geschrieben von Chaos2k sql.append("SELECT * "); sql.append("FORM Table"); "FROM" und bei Table gehört ein Tabellenname hin. z.B. "select * from user" Gruß Jaraz
29. April 200223 j Danke für euere Hilfe, aber das habe schon ausgebessert! Aber es funzt noch immer net. Wer hat noch Ideen? Schöne Grüße
29. April 200223 j Geh dein Programm doch mal mit Einzelschritten durch um rauszufinden an welcher stelle der Fehler auftritt.
29. April 200223 j Mach ich schon zum xten mal, der Fehler tritt bei der Zeile ResultSet resultSet = statement.executeQuery(sql.toString()); auf. Mit der Fehler Meldung: cannot resolve symbol symbol : variable statement location: class DB.DBAuslesen ResultSet resultSet = statement.executeQuery(sql.toString()); Gruß
29. April 200223 j Funktioniert leider auch net und ich weiß nicht warum! Hat vielleicht jemand eine andere Art SQl abfragen unter JAVA zu starten? Vielleicht mit Beispiel? Gruß Chaos2k
29. April 200223 j Also bei mir läuft folgender Code ohne Probleme public int SQLInsert(String Query) { int rc; try { Statement s = conn.createStatement(); rc = s.executeUpdate(Query); s.close(); return rc; } catch (SQLException e) { System.out.println("SQLExc cannot get connection to database" + e.getMessage()); return -1; } }
29. April 200223 j Moment der Code passt besser: public ResultSet SQLExecute(String Query) { ResultSet rs; try { Statement s = conn.createStatement(); rs = s.executeQuery(Query); s.close(); return rs; } catch(Exception e){System.out.println(e.getMessage()); return null;} }
29. April 200223 j Statement gehört zur SQL Klasse, die du natürlich importieren musst: import java.sql.*;
29. April 200223 j Also ich hab nur den Code der oben angegen ist! Der Rest des Programms ist nur die Verbindung zur DB! Vielleicht hab ich was vergessen, da das erste mal ist das ich JAVA arbeite. Ist auch Imported.
29. April 200223 j naja als Query kannst du jeden beliebigen SQL String übergeben ich hab dir auch noch ein Beispiel rausgesucht
29. April 200223 j Ich glaube ich habe den Fehler: ResultSet resultSet = statement.executeQuery(sql.toString()); muss ich nicht das statement. vorher deklarieren? Wenn ja, wie mach ich das? Danke & schöne Grüße Chaos2k
29. April 200223 j am besten so wie im Beispiel: { StringBuffer sql = new StringBuffer(256); sql.append("SELECT * "); sql.append("FORM Table"); Statement stmt = con.createStatement(); ResultSet resultSet = stmt.executeQuery(sql.toString()); while (resultSet.next()) { String test = resultSet.getString(1); System.out.println(test); } }
29. April 200223 j Sorry funktioniert auch nicht, Fehler bei: Statement stmt = con.createStatement(); mit der Meldung: cannot resolve symbol symbol : variable con location: class sa06tab.DBAuslesen Statement stmt = con.createStatement(); ^ Dafür funktioniert jetzt: ResultSet resultSet = stmt.executeQuery(sql.toString()); das. Was kann das jeztz bitte noch sein???????? Vielen Vielen Dank Gruß Chaos2k
29. April 200223 j con hast du deklariert oder? Connection con = DriverManager.getConnection(dburl, user, pass);
29. April 200223 j Wau danke, hat funktioniert habe sie falsch deklariert! Du hast meine Woche gerrettet! Nochmal Danke & eine schöne Woche Chaos2k:) :)
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.