'loha Folks,
über ein ADODataset setze ich folgenden
Query ab, dessen Ergebnis über eine DataSource in einem DBGrid angezeigt wird:
SQL-Code:
SELECT * FROM LoginUser, LoginRight, LoginUser_Right
WHERE Username = :Username
OR Forename = :Forename
OR Surname = :Surname;
Die Prozedur, welche den
Query im Programm aufruft ist diese hier:
Delphi-Quellcode:
procedure Tfrm_Main.btnOkClick(Sender: TObject);
begin
with ADODataSet_LoginUser do
begin
Close;
Active := False;
Parameters.ParamByName('Username').Value :=
edtUsername.Caption;
Parameters.ParamByName('Forename').Value :=
edtForename.Caption;
Parameters.ParamByName('Surname').Value :=
edtSurname.Caption;
Active := True;
Open;
end;
end;
Ich suche also nach den in den Edit angegebenen Zeichen in der Datenbank. Dies funktioniert soweit auch ganz gut. Nun möchte ich aber beim Suchen nicht immer den exakten Begriff eingeben. Die Suche soll also zumindest so intelligent sein, dass in der Datenbank nach Einträgen gesucht wird, welche mit den selben Buchstaben beginnen.
Bsp.
Ich suche nach dem Buchstaben "a".
In der Datenbank gibt es 100 Einträge, welche mit a beginnen. Genau diese möchte ich jetzt alle sehen.
Prinzipiell wird dies ja mit
WHERE Username = 'a%'
gemacht. Da ich aber den Tokken drin habe, weiss ich nicht wie das nun geschrieben wird :-/
Bin für Input sehr empfänglich -.-
Mit WebObjects habe ich die Strings immer mit zwei senkrechten Strichen zusamensetzen können (||), in Delphi scheint dies nicht zu funktionieren.