![]() |
Datenbank: Microsoft Access • Version: 2003 • Zugriff über: ADO
Suchfunktion
Hi
Ich habe mir mal einen kleinen Vokabel Trainer programmiert und jetzt wollste ich noch ein Lexikon einbauen. Mein Problem ist, dass ich nicht weiß, wie man nach Teilworten oder Buchstaben sucht. Nach dem vollständigen Wort kann ich suchen aber nach z.B. wenn ich "do" eingebe alle begriffe kommen in dem Fall zum beispiel dog,dome, ... MfG J.-H. D. |
Re: Suchfunktion
Hi,
SQL-Code:
Das Prozentzeichen dient als Platzhalter (wie z.B. der *). Bei dieser SQL-Abfrage würde alles gefunden werden, was mit bla anfängt.
SELECT * FROM Tabelle WHERE Feld LIKE "bla%"
|
Re: Suchfunktion
Ich hab es im Moment so :
Delphi-Quellcode:
Und jetzt soll ich es so machen :
ADOquery2.SQL.Text:= 'Select Franz from franz where ID= :suchwert'
Delphi-Quellcode:
???? ne das is bestimmt falsch
ADOquery2.SQL.Text:= 'Select Franz from franz where ID like suchwert'
Ich benutze ADO |
Re: Suchfunktion
Delphi-Quellcode:
so z.B.
ADOquery2.SQL.Text:= 'Select Franz from franz where ID LIKE :suchwert';
AdoQuery2.ParamByName('suchwert').AsString := Edit1.Text + '%'; |
Re: Suchfunktion
So hast Du es doch schon richtig, da fehlt nur die Parameterübergabe.
Delphi-Quellcode:
Ich weiß nicht, ob das korrekte ADO-Syntax ist, aber im Wesentlichen sollte das schon so stimmen.
ADOquery2.Parameters.ParamByName('suchwert').AsString := irgendwas + '%';
|
Re: Suchfunktion
Was bedeutet das ('suchwert')--->.AsString := Edit1.Text + '%'; <--- ?? und wofür steht das " '%' "
dumme Frage nebenbei : wie stell ich mein Label so ein, dass es den inhalt, der sich ändert immer mittig darstellt z.B. wenn da
Delphi-Quellcode:
steht soll die mitte genau die position haben wie wenn da
Haus
Delphi-Quellcode:
steht ??
Riesenbier
|
Re: Suchfunktion
Du hast doch im SQL den Parameter :suchwert definiert. Dieser wird mit der Zuweisung ParamByName('suchwert').AsString mit einem String befüllt (die ' außenrum kommen dann automatisch). Und das %-Zeichen ist in SQL ein Platzhalter für beliebig viele Zeichen (so wie * unter Windows).
|
Re: Suchfunktion
Das
Delphi-Quellcode:
bedeutet, dass Du dem Parameter suchwert (genauer der Parameter :suchwert in der SQL-Abfrage), einen String mit dem Text aus Edit1 zuweist. Zusätzlich wird noch ein % angehängt, der eben dafür sorgt, dass bei einer Eingabe von Haus auch Haustür, Haustor, Haushund gefunden wird.
...('suchwert').AsString := Edit1.Text + '%';
Zur "dummen Frage": ;) Setz die Eigenschaft des Labels AutoSize auf false und Alignment auf taCenter. [edit] Mist, jetzt war der "Hund" doch schneller :stupid: [/edit] |
Re: Suchfunktion
Danke ich probiers aus ...
|
Re: Suchfunktion
Also könnte ich einfach so machen
Delphi-Quellcode:
...('suchwert').AsString := '%' + Edit1.Text + '%';
|
Re: Suchfunktion
Ja
|
Re: Suchfunktion
und wie kann ich bei buttons autosize anstellen ??
|
Re: Suchfunktion
Zitat:
Buttons kennen kein Autosize. [edit] Zitat:
|
Re: Suchfunktion
Zitat:
|
Re: Suchfunktion
Ich hab ein Label Auf dem die gefragte vokabel steht und buttons auf denen die multiple choise fragen kommen leider sind die Buttons manchmal nicht lang genug und deswegen autosize :-D
Und nochwas die random funktion generiert bei mir immer die gleichen zahlen ichab sie so :
Delphi-Quellcode:
und danke das du mir hilfst :):)
variable:=random(200)+1
|
Re: Suchfunktion
Hi,
Du musst natürlich noch den Zufallsgenerator anwerfen, das geht per randomize(); Aber Achtung, randomize sollte nur einmal aufgerufen werden. Hier eignet sich sehr das Ereignis "OnCreate" Deines Formulars. |
Re: Suchfunktion
Ich bin soooo dumm das weiß ich doch :)
Und wie ists mit sowas wie autosize bei buttons ? |
Re: Suchfunktion
Gar nicht bzw. selbst nachrüsten.
Delphi-Quellcode:
und
Canvas.TextWidth('Text');
Delphi-Quellcode:
sollten hier weiterhelfen ;)
Button.Width := 100;
|
Re: Suchfunktion
Danke @all hat alles funktoniert
|
Re: Suchfunktion
Hi, ich hab das alles noch einmal ausprobiert, aber mein delphi kennt den ausdruck "AsString" nicht. Ic habs mit delphi 2007,Turbo Delphi und delphi 7 ausprobiert die sagen alle :undefinierter bezeichner 'AsString'
kann mir da noch mal einer helfen ?? :?: :( |
Re: Suchfunktion
Zeig mal den Aufruf.
|
Re: Suchfunktion
Nimm mal Value statt AsString (Sch**ß ADO).
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz