# Insert-anweisung mehrere Varianten eine geht



## Guest (21. Nov 2006)

hier habe ich mal eine kleine tabelle mit einer insert anweisung, die aber nicht funktioniert, sobalt ich mit variablen arbeiten will


```
befehl.executeUpdate("CREATE TABLE Adresse VALUES (    "ID                                     INT," +
     		                                                      "postleitzahl	    	VARCHAR(5)," +
     		                                                      "ort	    	                VARCHAR(50))"
                                );

			int r =3;
			String a ="gd";
			String b ="df";
   hier funktionierts			befehl.executeUpdate("INSERT INTO Adresse VALUES (4,'sdf','edef')");
   		//	befehl.executeUpdate("INSERT INTO Adresse VALUES ("+r+','+a+','+b+")");
   		//	befehl.executeUpdate("INSERT INTO Adresse VALUES ("+r+","+a+","+b+")");
```

bitte helft mir einer?!

Fehler meldung bei den anderen Varianten:

JDBC/mySQL-Treiber geladen.

Fehler bei Datenbankzugriffjava.sql.SQLException: [Microsoft][ODBC Microsoft Acc
ess Driver] 2 Parameter wurden erwartet, aber es wurden zu wenig Parameter ³berg
eben.
JDBC/mySQL-Treiber geladen.

Press any key to continue...


----------



## SlaterB (21. Nov 2006)

du hattest die Hochkommata vergessen:

```
befehl.executeUpdate("INSERT INTO Adresse VALUES ("+r+",'"+a+"','"+b+"')")
```

wäre wiederum auch leicht sichtbar gewesen, wenn du den Befehl in einen String schreiben und ausgeben würdest
System.out.println!!


----------



## Guest (22. Nov 2006)

Danke das hat nun funktioniert!

Das mit den Hockkommata war der Fehler, das steht aber so in keinem Buch!
Das mit der Formatierung tut mir leid, so ist es in meinem Programm nicht, aber
wenn man fast 30 Variablen hat, die in die DB reingeschrieben werden sollen, da 
ist es einfacher um Fehler zu vermeiden diese untereinander und nicht in einer Reihe
zu schreiben, ist aber meine Meinung. Nun mus ich mal schauen, ob ich das andere 
Problem auch noch hinbekomme, danke nochmals

Markus


----------

