Entwickler-Ecke

Datenbanken - query - problem


D. Annies - Mo 02.06.08 10:04
Titel: query - problem
Hi, Delpher,

aus dem Code ist glaube ich, mein Problem ersichtlich:
--> die where-Klausel ist falsch


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
if edit1.Text[1] in ['5', '6'] then  // da steht die Klasse drin, z.B. 5a, 5c, 6b
  begin
    query1.close;
      query1.sql.text := format('select punkte, klasse, name, vorname from "%s" ' +
                          //      'where klasse[1] = "5" or klasse[1] = "6" ' +
                                'order by ' + #13 +
                                'punkte desc, klasse, name, vorname', [label21.caption]);
    query1.open;


Wer kann helfen?
Danke, Detlef


mkinzler - Mo 02.06.08 10:09

Es fehlt das where
BTW. das #13 ist unnötig


ZeitGeist87 - Mo 02.06.08 10:13
Titel: Re: query - problem
user profile iconD. Annies hat folgendes geschrieben:
Hi, Delpher,

aus dem Code ist glaube ich, mein Problem ersichtlich:
--> die where-Klausel ist falsch


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
if edit1.Text[1] in ['5', '6'] then  // da steht die Klasse drin, z.B. 5a, 5c, 6b
  begin
    query1.close;
      query1.sql.text := format('select punkte, klasse, name, vorname from "%s" ' +
                          //      'where[/where] klasse[1] = "5" or klasse[1] = "6" ' +
                                'order by ' + #13 +
                                'punkte desc, klasse, name, vorname', [label21.caption]);
    query1.open;


Wer kann helfen?
Danke, Detlef


Das where ist doch da ;-)

Schreib die Zeile doch so:


Delphi-Quelltext
1:
'where klasse[1] = ''' + '5' ''' or klasse[1] = ''' + '6' + ''' order by punkte desc, klasse, name, vorname'                    


LG
Stefan


mkinzler - Mo 02.06.08 10:15

Diese Zeile ist aber auskommentiert!


ZeitGeist87 - Mo 02.06.08 10:19

user profile iconmkinzler hat folgendes geschrieben:
Diese Zeile ist aber auskommentiert!


Ja, weil sie nicht funktioniert ;-)

Wir können ihn ja mal fragen:

Warum ist die Zeile auskommentiert?


D. Annies - Mo 02.06.08 10:32

Hi, Stefan und Markus,

ja, die Zeile ist auskommentiert, weil sie nicht funktioniert.
Das #13 habe ich nur der Übersichtlichkeit halber drin (ist verzichtbar).

Bei deinem vorgeschlagenen Code bekomme ich noch die Fehlermeldung:
Operator oder Semikolon fehlt. (Ein Like-Versuch von mir ist auch fehlgeschlagen)

Detlef


ZeitGeist87 - Mo 02.06.08 10:37

user profile iconD. Annies hat folgendes geschrieben:
Hi, Stefan und Markus,

ja, die Zeile ist auskommentiert, weil sie nicht funktioniert.
Das #13 habe ich nur der Übersichtlichkeit halber drin (ist verzichtbar).

Bei deinem vorgeschlagenen Code bekomme ich noch die Fehlermeldung:
Operator oder Semikolon fehlt. (Ein Like-Versuch von mir ist auch fehlgeschlagen)

Detlef


Vergiss das ; (Semikolon) nicht ;-)


D. Annies - Mo 02.06.08 10:45

Bloß: an welcher Stelle ?


ZeitGeist87 - Mo 02.06.08 10:49


Delphi-Quelltext
1:
'where klasse[1] = ''' + '5' ''' or klasse[1] = ''' + '6' + ''' order by punkte desc, klasse, name, vorname';                    


;-)


D. Annies - Mo 02.06.08 11:03

Manchmal hat man ja wohl ein Brett vor dem Kopf! :oops: :oops:

Grüße aus Lübeck - ich sollte mich jetzt mal im Freibad abkühlen ..

Danke, Detlef