Hallo,

' ' und null ist zweierlei und wenn ein subselect kein Ergebniis liefert, wird hier ebenfalls null zurück geliefert. Wenn ich das alles richtig lese, kann man den ersten Teil weglassen und gleich
update ...
set iwufi = (coalesce (select ...), 'INZ') where exists (select ...)
machen, das nimmt dem SQL Interpreter auch jede Möglichkeit in Vogelgrippe zu verfallen.

mfg

Dieter Bender

Zitat Zitat von elsing
Hallo Forum,
kann mir jemand zu o.g. SQL- Fehler helfen? Ich habe dieses Statement längere Zeit nicht benutzt. Heute wollte ich es ausführen und es funktioniert nicht mehr, bzw. es läuft nur bis zu einer bestimmten Stelle (ca. 20 Datensätze werden bearbeitet).
Hat jemand einen Tip?

Danke!

update c82f/iim set iwufi='INZ' where immand=11 and iwufi=' '
20 Zeilen in IIM in C82F aktualisiert.

update c82f/iim a set iwufi= (select iwufi from c82f/iim b where
a.iprod=b.iprod and a.immand<>b.immand and b.immand=1 and
a.immand=11
and a.i1sdb<>' ') where exists (select iwufi from
c82f/iim b where a.iprod=b.iprod and a.immand<>b.immand and
a.immand=11 and a.i1sdb<>' ')
Nullwerte für Spalte oder Variable IWUFI nicht zulässig.

Da ich vorher einen Wert in das Feld setze, wenn es *blank ist, kann es nicht leer sein.