Einzelnen Beitrag anzeigen

Alfons_G

Registriert seit: 7. Jun 2002
Ort: München
296 Beiträge
 
Delphi 2007 Architect
 
#2

Re: Sql Selcet fehler aber wo ?

  Alt 11. Jun 2004, 09:12
SQL erwartet Strings in einfachen Anführungszeichen - genauso wie Delphi. Du solltest es also so machen:
Delphi-Quellcode:
Loginquery.SQL.Clear;
loginquery.SQL.Text:='Select ID FROM USER_TABELLE WHERE USERNAME='+ QuotedStr(ed_username.Text) +' AND PASSWORT='+ QuotedStr(ed_Passwort.Text) +'';
Loginquery.Open;
Dein SQL-String wird dann so übergeben:Select ID FROM USER_TABELLE WHERE USERNAME='UserAND PASSWORT='Password' Dann sollte es klappen.
Du kannst zwar auch Anführungzeichen manuell zufügen, aber Vorsicht: Wenn der Anwender in eines der Felder ein einfaches Anführungszeichen eingibt, bekommst Du dann einen SQL-Fehler, bzw. unter Umständen ist sogar die berüchtigte "SQL-Injection" möglich, d.h. die manuelle Eingabe von manipuliertem SQL-Code. Mit der Funktion QuotedStr werden dagegen alle in der Eingabe vorhandenen Anführungszeichen durch Verdoppelung entschärft.

Alfons Grünewald



Alfons Grünewald
  Mit Zitat antworten Zitat