Autor Beitrag
Josef-B
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 293

2003 Server, Win7, Win8
Delphi 2010 Pro, Firebird 2.5
BeitragVerfasst: Di 20.01.04 18:55 
Folgendes Problem:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
ibtransactionuni.Active := true;
ibsql1.SQL.clear;
text :=
'Insert into EXPORT (KONTO_NR,NAME_1,NAME_2,STRASSE,PLZ,ORT) ' +
'Select Distinct KUNDENMAIL.KONTO_NR, KUNDEN.NAME_1, KUNDEN.NAME_2,' +
'KUNDEN.STRASSE,KUNDEN.PLZ, KUNDEN.ORT from KUNDEN' +
' where KUNDEN.STATISTIKFELD_1 <> ' + quotedstr('M') +
' INNER JOIN KUNDENMAIL on KUNDENMAIL.konto_nr = KUNDEN.KONTO_NR' +
' order by KUNDEN.PLZ' ;
showmessage ('string =' +text);
ibsql1.SQL.Text:= text;
ibsql1.ExecQuery;
ibsql1.transaction.commit;


Die Zeile:
ausblenden Delphi-Quelltext
1:
' where KUNDEN.STATISTIKFELD_1 <> ' + quotedstr('M') +					


habe ich nachträglich eingefügt. Ohne die where-Klause funktioniert alles, aber mit bekomme ich die Fehlermeldung 'token unknown ''Inner''.

Was habe ich denn da falsch gemacht, steht die where Klausel da an falscher Stelle?


Zuletzt bearbeitet von Josef-B am Mi 21.01.04 19:09, insgesamt 2-mal bearbeitet
tomtom62
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 278

WIN 2000, XP prof
D5 prof.
BeitragVerfasst: Di 20.01.04 19:07 
Gut erkannt :wink: .

Im Ernst, WHERE gehört vor das ORDER BY.
Böser Borstel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 154



BeitragVerfasst: Mi 21.01.04 08:39 
hast du vielleicht übersehen tomtom62 aber seine where klausel ist vor order. er hat sie unten nur nochmal ausgelistet damit der Fehler besser sichtbar ist
KidPaddle
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 351

WinXP,Linux
D7 Prof, XE7
BeitragVerfasst: Mi 21.01.04 09:16 
Tja, und trotzdem hat tomtom62 Recht. :lol: Denn die WHERE Klausel steht mitten im FROM - Abschnitt und zerteilt den INNER - JOIN. Also WHERE - Klausel vor der ORDER BY verschieben.

Gruß
KidPaddle
Josef-B Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 293

2003 Server, Win7, Win8
Delphi 2010 Pro, Firebird 2.5
BeitragVerfasst: Mi 21.01.04 18:48 
ja, danke da wars.