Danke, das war mein Fehler wieder einmal. Da hab ich zu kurz gedacht, weil die andere Procedure ja tadellos funktioniert hat. Aber da bekomme ich die Daten nicht über eine Datei sondern mache den Update auf Grund eines Kennzeichens im LEAP1.

Zitat von
Fuerchau
Wie der Fehler schon sagt:
Der inner Select findet auf Grund der Whereklausel u.U. keine Daten und deine Zielvariablen erlauben kein NULL.
Nun ist es leider so, dass der Optimizer im Dialog (STRSQL) anders arbeitet als im embedded.
Zusätzlich ist es wohl auch so, dass eben ein Subselect NULL bringen kann, auch wenn er es nachher dann doch nicht tut, was der Optimizer wohl mal wieder vorher prüft.
Vervollständige einfach den SQL mit einer Where-Klausel auf dem Update:
update table
set ... = (select ... where ...)
where ...
Andreas
Ein AS/400 Dinosaurier since 1989
Bookmarks