# Error: ORA-00933: SQL command not properly ended



## Br4ve (5. Sep 2012)

```
UPDATE processstep 
SET status = 8 WHERE psid =  332079
UPDATE processinstance 
SET status = 7 
WHERE  pinid = (SELECT processinstance.pinid FROM processinstance, processstep WHERE processstep.psid = 332079 AND processstep.pinid = processinstance.pinid)
UPDATE process 
SET status = 8 WHERE  pid = 3860
```

Wieso kommt dieser Fehler?


----------



## Peter W. Marth (6. Sep 2012)

Das sind 3 Statements, trenne sie mit Semikolon:


```
UPDATE processstep 
SET status = 8 WHERE psid =  332079;
UPDATE processinstance 
SET status = 7 
WHERE  pinid = (SELECT processinstance.pinid FROM processinstance, processstep WHERE processstep.psid = 332079 AND processstep.pinid = processinstance.pinid);
UPDATE process 
SET status = 8 WHERE  pid = 3860;
```


----------



## Br4ve (6. Sep 2012)

Die Semicolons ändern nichts an dem Fehler, das habe ich auch schon versucht....


----------



## SlaterB (6. Sep 2012)

wie kann nur SQL-Code eine Java-Frage sein?
ist doch hochinteressant, mit welchen Java-Befehlen du das ausführst,
vielleicht gehen nicht mehrere Kommandos zusammen, je einzeln probiert?

> Die Semicolons ändern nichts an dem Fehler, das habe ich auch schon versucht.... 

Vorsicht übrigens mit der Formulierung, man könnte in den Vorwurf verfallen,
dass du diese wichtige Information nicht gleich am Anfang gepostet und unnötige Arbeit verursachst hast

(also kombiniert: wehe du schreibst jetzt, dass du schon 3x einzeln probiert hast  )


----------



## tfa (6. Sep 2012)

Versuchst du vielleicht diese 3 Queries in einem Statement auszuführen? Das geht nicht!


----------



## Br4ve (6. Sep 2012)

Hmm ja versuche ich, allerdings ist der SQL Code nicht von mir und scheint in Python zu funktionieren ???:L Der JavaCode spielte diesbezüglich wohl keine Rolle, weil es bei mir mit dem SQuirell SQL Client auch nicht funktioniert und daher hab ich den JavaCode um euch Arbeit zu ersparen mal weggelassen  
Ich habe an dem Fehler mehrere Stunden verbracht und jeden Mumpitz ausprobiert, deshalb habe ich das mit dem Semicolons nicht dazugeschrieben, weil das normalerweise auch keine Rolle spielen sollte in den allermeisten Fällen (nicht in allen!). 
Zur Lösung:

Das Problem scheint wohl tatsächlich darin zu liegen das man diese Queries einzeln ausführen muss.
Ich habe daraufhin ein anonymous Block verwendet :rtfm: :


```
Begin
Statement1;
Statement2;
..
StatementN;
End;
```

Jetzt funktioniert es problemlos :toll:


----------

