also, ich brauche vor einem Insert bestimmte Einstellungen, die nachher zurückgesetzt werden,
dafür hab ich mitm JAva ein Funtion ertstellt , die mit derselben Conn. , mit auch der Insert läuft,
die Einstellungen setzen soll, seht selbst :
Obwohl ich die SET-Anweisungen einem Skript entnommen habe, das mit sqldump erzeugt wurde, wirft Java immer einen SQL-Fehler :
ttsp_func_data run_set_scripts modus PRE Fehler : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET FOREIGN_KEY_CHECKS = 0' at line 1
was soll daran falsch sein ?
in der MySQL-Workbench wirft SET FOREIGN_KEY_CHECKS = 0 auch keinen Fehler, wirkt sich aber auch nicht aus.
Derzeit schreibt das Programm nur 10 von 109 Zeilen in die Zieldatei, nicht der wahre Jakob :-)
was tun, sprach Zeus ..
dafür hab ich mitm JAva ein Funtion ertstellt , die mit derselben Conn. , mit auch der Insert läuft,
die Einstellungen setzen soll, seht selbst :
Code:
private static void run_set_scripts(Connection cn_sp,String modus) { //-Einstellungen mittels SET-Kommando -- String set_sql = ""; if(modus.startsWith("PRE")) { set_sql = "SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;"; //set_sql += "SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS;"; set_sql += "SET FOREIGN_KEY_CHECKS = 0;"; } if(modus.startsWith("POST")) { //set_sql = "SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;"; set_sql = "SET FOREIGN_KEY_CHECKS = 1;"; set_sql += "SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;"; } try { cn_sp.setAutoCommit(true); Statement stmt = cn_sp.createStatement(); stmt.executeUpdate(set_sql); System.out.println("ttsp_func_data run_set_scripts modus "+modus+" set_sql : "+set_sql+" ausgefuehrt !"); } catch (Exception e) { System.err.println("ttsp_func_data run_set_scripts modus "+modus+" Fehler : "+e.getMessage()); //e.printStackTrace(); } }
ttsp_func_data run_set_scripts modus PRE Fehler : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET FOREIGN_KEY_CHECKS = 0' at line 1
was soll daran falsch sein ?
in der MySQL-Workbench wirft SET FOREIGN_KEY_CHECKS = 0 auch keinen Fehler, wirkt sich aber auch nicht aus.
Derzeit schreibt das Programm nur 10 von 109 Zeilen in die Zieldatei, nicht der wahre Jakob :-)
was tun, sprach Zeus ..
Comment