Autor Beitrag
Rene1802
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: Do 21.10.04 09:47 
Hallo erst mal
Ich habe da ein Problem mit meiner Query.
Ich möchte gerne mit dem Befehl 'Update' Felder in meiner Query manipulieren.
Und zwar möchte die Zeichenkette Kl_Leiter bestehend aus 2Wörter (Name, Nachname) in alle Felder Klassenleiter schreiben, wo dder Integerwert Liga_ID herrausgefiltert wird.

Bei dem folgendem Quellcode kommt auch folgende Fehlermeldung

'Ungültiges Schlüsselword'
'Symbol-String: Name'
'Zeilennummer: 1'

Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('UPDATE Club SET Klassenleiter = ' + Kl_Leiter +
' Where Liga_Index = ' + IntToStr(Liga_ID) + '');

Query1.ExecSQL;
Query1.Post;
Query1.Edit;

Kann es sein, das SQL ein Problem mit Leerzeichen in einem Feld hat oder hat es damit nichts zu tun.

Und für was brauch ich denn den Post befehl.
Bin für jede anregung dankbar.
Rene
Ramon
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 107

WIN7
D6 Prof, D7 Prof, D 2009
BeitragVerfasst: Do 21.10.04 09:51 
Hallo,

versuch mal
Query1.SQL.Add('UPDATE Club SET Klassenleiter = ''' + Kl_Leiter +
''' Where Liga_Index = ' + IntToStr(Liga_ID) + '');

MFG
Ramon
Rene1802 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: Do 21.10.04 09:59 
Es Funktionier mußte noch Query1.Edit und Query1.Post entfernen.
Danke Rene
smiegel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 992
Erhaltene Danke: 1

WIN 7
D7 Prof., C#, RAD XE Prof.
BeitragVerfasst: Do 21.10.04 10:02 
Hallo,

nach ExecSQL darfst Du kein Post und Edit aufrufen. Dies wird ja bereits durch die Query erledigt.

Zur besseren Übersicht kann es nicht schaden, wenn Du Deine Query etwas besser formatierst:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
  Query1.Close; 
  Query1.SQL.Text:=
    Format('UPDATE Club SET Klassenleiter="%s" WHERE (Liga_Index=%d)', [Kl_Leiter, Liga_ID]); 
  // oder
  // Format('UPDATE Club SET Klassenleiter=%s WHERE (Liga_Index=%d)', [QuotedStr(Kl_Leiter), Liga_ID]); 
  Query1.ExecSQL;

_________________
Gruß Smiegel
Ich weiß, daß ich nichts weiß, aber ich weiß mehr als die, die nicht wissen, daß sie nichts wissen. (Sokrates)