Hallo zusammen,
ich mach nen Update-Befehl auf eine Datenbank, welcher Syntaktisch korrekt ist, da er im SQL-Editor von MS Access 2007 einwandfrei funktioniert.
Da ich keine 14000 Updates von Hand eintippen will, wollte ich eine Java-Schleife schreiben und bekomme nun folgenden Fehler zurück:
Ausschnitte aus dem Quellcode:
[Java]
connect = build1.open()
Statement stmt = connect.createStatement();
--> hier würde die Schleife mit nem Select etc. beginnen, aber dort liegt nicht der Fehler!
String sql = "UPDATE Kundenbezüge12_07_10 SET Datum2 = \""+ datum_neu + "\" WHERE ID = " + id;
System.out.println(sql);
int updateCount = stmt.executeUpdate(sql); //<-- hier wird mir der Fehler immer angezeigt!
--> hier wäre die Schleife zu Ende
build1.close(connect);
[/Java]
[Java]
public class Build {
public Connection open(){
Connection con = null;
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// set this to a MS Access DB you have on your machine
String filename = "C:/Users/testUserl/Desktop/Kundenstamm.mdb";
String database = "jdbc
dbc
river={Microsoft Access Driver (*.mdb)};DBQ=";
database+= filename.trim() + ";DriverID=22;READONLY=false}";
//database+= filename.trim() + ";DriverID=22}";
con = DriverManager.getConnection(database,"","");
}
catch (Exception e) {
System.out.println("Error: " + e);
}
return con;
}
public void close(Connection con){
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
[/Java]
ich mach nen Update-Befehl auf eine Datenbank, welcher Syntaktisch korrekt ist, da er im SQL-Editor von MS Access 2007 einwandfrei funktioniert.
Da ich keine 14000 Updates von Hand eintippen will, wollte ich eine Java-Schleife schreiben und bekomme nun folgenden Fehler zurück:
Java:
UPDATE Kundenbezüge12_07_10 SET Datum2 = "02-03-2009" WHERE ID = 1
java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] 1 Parameter wurden erwartet, aber es wurden zu wenig Parameter übergeben.
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcStatement.execute(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcStatement.executeUpdate(Unknown Source)
at Connection2.main(Connection2.java:96)
Ausschnitte aus dem Quellcode:
[Java]
connect = build1.open()
Statement stmt = connect.createStatement();
--> hier würde die Schleife mit nem Select etc. beginnen, aber dort liegt nicht der Fehler!
String sql = "UPDATE Kundenbezüge12_07_10 SET Datum2 = \""+ datum_neu + "\" WHERE ID = " + id;
System.out.println(sql);
int updateCount = stmt.executeUpdate(sql); //<-- hier wird mir der Fehler immer angezeigt!
--> hier wäre die Schleife zu Ende
build1.close(connect);
[/Java]
[Java]
public class Build {
public Connection open(){
Connection con = null;
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// set this to a MS Access DB you have on your machine
String filename = "C:/Users/testUserl/Desktop/Kundenstamm.mdb";
String database = "jdbc
database+= filename.trim() + ";DriverID=22;READONLY=false}";
//database+= filename.trim() + ";DriverID=22}";
con = DriverManager.getConnection(database,"","");
}
catch (Exception e) {
System.out.println("Error: " + e);
}
return con;
}
public void close(Connection con){
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
[/Java]