Re: unexpected token


[ ruban.de ] [ Antworten ] [ Forum ]

Geschrieben von Volker Buettner on September 20, 2002 um 11:56:

Als Antwort auf unexpected token geschrieben von Klaus Gödeke on August 21, 2002 um 16:38:

: Hallo, ich versuche gerade folgendes mit Net.Data:

: %FUNCTION(DTW_SQL) sql_adduser1() {
: INSERT INTO DBTIB.DLKDIENST
: (ID, FBNR, FG, KENNUNG, FORSCHUNG, DIENST, GERAET, PUBLIK, ANSPRECH, MAIL, WWW, SONSTIGES)
: VALUES ( (SELECT COALESCE (MAX(ID)+1,1) FROM DBTIB.DLKDIENST),
: $(NFBNR), '$(NFG)', $(NKENNUNG), '$(NFORSCHUNG)', '$(NDIENST)', '$(NGERAET)', '$(NPUBLIK)', '$(NANSPRECH)',
: '$(NMAIL)', '$(NWWW)', '$(NSONSTIGES)')
: %}

: Die folgende Fehlermeldung erscheint:
: DTWF023E: Net.Data is unable to execute the SQL statement [IBM][CLI Driver][DB2/6000]
: SQL0104N An unexpected token "," was found following "W ) VALUES (". Expected
: tokens may include: "". SQLSTATE=42601.

: In dieser SQL-Anweisung ist meiner Meinung nach kein Fehler, denn sie funktioniert mit etwas weniger Variablen an anderer Stelle bestens. Gibt es bez. der Anzahl der zu übergebenden Werten eine Limit?
: Hat jemand eine Idee?
: Klaus

Hallo Klaus!

Folgendes duerfte in Deiner SQL-Anweisung verkehrt sein:

(SELECT COALESCE (MAX(ID)+1,1) FROM DBTIB.DLKDIENST),

Das Komma hinter der "from"-clause wird von SQL inter-
pretiert und nicht als Fortsetzung Deiner SQL-Anweisung. Dementsprechend muesste der Char. String wir folgt aussehen:

(SELECT COALESCE (MAX(ID)+1,1) FROM DBTIB.DLKDIENST)


Gruss Volker.




Antworten:


Schreibe eine Antwort

Name:   
E-Mail:  

Thema:

Kommentar:

Optionale Link URL:   
Link Titel:                  
Optionale Image URL:


[ Antworten ] [ Forum ]