Thema: Delphi Hilfe für Anfänger SQL

Einzelnen Beitrag anzeigen

Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Hilfe für Anfänger SQL

  Alt 28. Sep 2003, 11:08
Zitat von schniede:
ich noch ma!

Code:
query1.sql.clear;
 Query1.SQL.Text :='DELETE FROM langzeittabelle WERE datum = '18.09.2003';
 Query1.ExecSQL;
bekomme auch die Fehlermeldung:[Fehler] Kundenverwaltung.pas(1235): Operator oder Semikolon fehlt

vieleicht kannst du noch mal ein Blick drauf werfen Sharky ?

schniede
Hai,

so kann es nicht gehen. Du musst ja einen String übergeben in dem Hochkommatas stehen.

Hatte ich in meinem Beispiel total vergessen ;-(

Versuche es mal so:

Code:
query1.sql.clear;
 Query1.SQL.Text :='DELETE FROM langzeittabelle WHERE datum = '
  + QuotedStr ('18.09.2003');
 Query1.ExecSQL;
Das QuotedStr gibt als Ergebniss '18.09.2003' zurück! Inkl. der Hochkommas. Bei deinem Code hast Du ja mit dem ' vor der 18. den String beendet.

Noch mal zum Verständiss: Der SQL-String muss so aussehen
 DELETE FROM langzeittabelle WERE datum = '18.09.2003' Dummerweise werden in Delphi Strings halt auch in ' eingeschlossen.
Wenn Du nun den Teil der in Hochkommas sein musst mit QuotedStr übergibst läuft es.
Das gleiche Problem hättest du z.B. bei der Suche nach Text.

Uff... Ich hoffe Du verstehst was ich meine!?


[EDIT]ACHTUNG! Bei Dir im Code steht WERE und nicht WHERE
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat