# Beim insert bekomme ich den Fehler missing select keyword



## hans23 (24. Mai 2008)

Hallo,

ich versuche mit java ein einfaches sinert zu machen.:

```
public Angebot setAngebot(int angebotdaten)
		  {
			  int updateCounts[]  = null;
			  try
			 { 
				
				Statement s = conn.createStatement();
				s.addBatch( "insert into angebot vaules (20,20.05.2008,100,1,0)");
				updateCounts = s.executeBatch();

				
				  
			 } catch(SQLException ex)
```

leider erhalte ich bei der abfrage immer die Fehlernmeldung: ORA-00928: missing SELECT keyword.
Wieso denn dsa? Ich will doch gar kein select machen.


----------



## Guest (24. Mai 2008)

Du hast dich vertippt 'va*ul*es'. Schreibe auch die Bezeichner der einzelnen Spalten im Insert Statement.
Das ist zwar optional (wenn alle befüllt werden), erhöht aber die Lesbarkeit.
Ansonsten noch das executeBatch erst nach paar addBatch Aufrufen ausführen, nicht direkt nach addBatch.


----------



## VoiDee (25. Mai 2008)

Hat noch einen weiteren Nachteil die Spalten nicht benannt werden. Wenn du später mal deine Tabelle änderst indem du eine/mehrere Spalten hinzufügst funktionieren deine Insert-Statements nicht mehr. Dann musst du - eigentlich völlig unnötigerweise - deinen Java Code ändern. Diesen zusätzlichen Aufwand kannst Du dir sparen, wenn du deine Inserts vollständig angibst.


----------

