Hallo,
ich habe ein Problem mit dem, von Java aus, einfügen von Text in eine angelegte TestDB in MySQL.
Das Ausführen von SELECT klappt, INSERT nicht (Anführungszeichen sind richtig gesetzt.)
Wenn ich die als normalen Text mit printnl(...) ausgegebene INSERT-Anweisung copy&paste in dem SQL-Monitor "mysql" testweise in der Konsole einfüge, klappt es ohne Probleme... ich bin am verzweifeln.
Im Beispiel wir einmal sql2 erfolgreich ausgeführt, alle Daten sind dann in der while-Schleife zu sehen.
(Anweisung in sql1 geht nicht, selbst wie gesagt nicht, wenn ich den Text copy&paste in dem Mysql-Monitor einsetze.)
Ist da ein Newbie-Fehler??? ;(
Bsp:
Danke schon mal für Hilfe!!!
Grüße,
MK
--
PS: Fehlermeldung bei sql1:
java.sql.SQLException: Can not issue data manipulation statements with executeQuery().
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
at com.mysql.jdbc.StatementImpl.checkForDml(StatementImpl.java:490)
at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1467)
at de.....DatabaseAccess.insertVocsFromTextfile(DatabaseAccess.java)
at de.....main(Start.java)
ich habe ein Problem mit dem, von Java aus, einfügen von Text in eine angelegte TestDB in MySQL.
Das Ausführen von SELECT klappt, INSERT nicht (Anführungszeichen sind richtig gesetzt.)
Wenn ich die als normalen Text mit printnl(...) ausgegebene INSERT-Anweisung copy&paste in dem SQL-Monitor "mysql" testweise in der Konsole einfüge, klappt es ohne Probleme... ich bin am verzweifeln.
Im Beispiel wir einmal sql2 erfolgreich ausgeführt, alle Daten sind dann in der while-Schleife zu sehen.
(Anweisung in sql1 geht nicht, selbst wie gesagt nicht, wenn ich den Text copy&paste in dem Mysql-Monitor einsetze.)
Ist da ein Newbie-Fehler??? ;(
Bsp:
Java:
...
conn = getInstance();
Statement query;
if(conn != null)
{
query = conn.createStatement();
String sql1 = "INSERT INTO vocabulary (id, english, deutsch, grade) VALUES (0 , \"HALLO\", \"HELLO\", 9);";
String sql2 = "SELECT * FROM vocabulary;";
System.out.println(sql2); // hier String für COPY&PASTE
ResultSet result = query.executeQuery(sql2);
while (result.next()) { // nur für SELECT Befehl
System.out.println(result.getString(2)); // hier werden bei SELECT Daten von Spalte 2 ausgegeben
}
}
Danke schon mal für Hilfe!!!
Grüße,
MK
--
PS: Fehlermeldung bei sql1:
java.sql.SQLException: Can not issue data manipulation statements with executeQuery().
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
at com.mysql.jdbc.StatementImpl.checkForDml(StatementImpl.java:490)
at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1467)
at de.....DatabaseAccess.insertVocsFromTextfile(DatabaseAccess.java)
at de.....main(Start.java)
Zuletzt bearbeitet: