PDA

View Full Version : Sqlstate= 42908; Spaltenliste erforderlich



tarkusch
06-09-21, 10:40
Hallo,

ich wollte automatisiert aus einem Feld wo das SqlStatement abgespeichert ist eine Kopie im QTemp zum Versenden erstellen.
Das Sqlstatement wird je nach Auswahl generisch erstellt.
Die Dateien sind PF und haben Spaltenüberschriften

Leider bekomme ich hier den Fehlercode:
Sqlcode= -153
Sqlstate= 42908
Spaltenliste erforderlich.

Sqlstatement:

CREATE TABLE QTEMP/TmpFILE AS
(SELECT FIELD1, FIELD2, IfNull(FIELD3, 'not found in FILE2')
as ITEMTEXT
FROM FILE1 LEFT OUTER JOIN FILE2
ON KEY1 = KEY1
ORDER BY FIELD1)
WITH DATA

Ich habe bei meiner Google-Suche nichts passendes gefunden.

Dank im Voraus

Andreas_Prouza
06-09-21, 10:49
Hi,

mach's so:
CREATE TABLE QTEMP/TmpFILE (FIELD1, FIELD2, ITEMTEXT) AS
(SELECT FIELD1, FIELD2, IfNull(FIELD3, 'not found in FILE2')
as ITEMTEXT
FROM FILE1 LEFT OUTER JOIN FILE2
ON KEY1 = KEY1
ORDER BY FIELD1)
WITH DATA

tarkusch
06-09-21, 11:29
Dankeschön hat toll geklappt

Fuerchau
06-09-21, 15:23
Eine Spaltenliste ist immer dann erforderlich, wenn mehrere Tabellen im Spiel sind und es dabei zu doppelten Quell-Namen kommt.
Dies gilt selbst dann, wenn man nur die benötigten Felder ausgewählt hat.

tarkusch
13-09-21, 08:26
Ja das habe ich bisher auch so verstanden.
In den Dateien waren die Quellnamen nicht ident, aber mit IfNull() hatte ich dann das Problem.