![]() |
Datenbank: mysql • Version: 3.23.52 • Zugriff über: zeos komponenten
mysql + zeos + dbgrid problem !
also fürs erste geb ich es auf
ich möchte gerne im onchange eines edits mein dbgrid filtern lassen , also wen ich z.b. nach namen filtern möchte und nur z.b. " L " eingebe sollen nur noch alle namen die mit L beginnen angezeigt werden. gebe ich aber " La " sollen nur noch alle namen mit LA am anfang angezeigt werden. alles klar ? :D ich hab schon ne menge probiert z.b. über den filter der ztable aber nix half bis jetzt im prinzip will ich sowas haben -> SELECT * FROM bla WHERE name LIKE 'bla%%%' ich habe mysql db ein dbgrid und die zeos komponenten evtl kann mir ja jemand helfen |
Re: mysql + zeos + dbgrid problem !
Hai SeeAAL,
Du hast doch eingentlich schon die Lösung beschrieben ;-)
Delphi-Quellcode:
Du musst dich aber fragen ob dies eine gute Idee ist. Immerhin werden jetzt bei jeder Änderung im Edit die Daten neu vom mySQL-Server geladen :!:
procedure TForm1.FormCreate(Sender: TObject);
begin with ZQuery1 do begin Close; SQL.Text := 'SELECT * FROM test1 WHERE name LIKE :name'; // Tabellennamen anpassen ParamCheck := True; ParamByName('name').AsString := '%'; Open; end; end; procedure TForm1.Edit1Change(Sender: TObject); begin ZQuery1.ParamByName('name').AsString := Edit1.Text + '%'; ZQuery1.Refresh; end; |
Re: mysql + zeos + dbgrid problem !
Oder so:
Delphi-Quellcode:
Grüße,
Query.Close;
Query.SQL.Clear; Query.SQL.Text := 'select * from Table_x where upper(spalte_x) like '+UpperCase(quotedstr('%'+Edit.Text+'%')); Query.Open; Tom |
Re: mysql + zeos + dbgrid problem !
ah danke :-) des ging fix gleich mal testen
das die daten neu geladen werden , sollte bei mir nicht das prob sein , ist nen lokaler mysql server mit nur einem benutzer also sollte sich das ganze was drum herum geschieht in grenzen halten |
Re: mysql + zeos + dbgrid problem !
ah ich denke ich hab mich falsch ausgedrückt oder ganz einfach vor lauter ärger das wichtigste vergessen
sowas wie ihr hat ich ja auch schon , ähnlich halt . aber selbst bei SELECT * FROM bla aktualisiert sich mein dbgrid nicht , das is das problem :-) also nicht die wildcards sondern das doofe doofe dbgrid ist wohl das prob :D naja mein fehler btw evtl wisst ihr ja ne anderen dbgrid kompo muss ja nicht viel schnickschnak haben, so das sie auch ein nicht so versierter user benutzen kann :-) |
Re: mysql + zeos + dbgrid problem !
Zitat:
das "UpperCase" ist nicht notwendig. mySQL berücksichtigt in der Standardkonfiguration keine Groß-/Kleinschreibung bei einer LIKE-Abfrage. @SeeALL: Das Verstehe ich jetzt nicht. Das DBGrid muss bei den beiden Codebeispielen aktualiesiert werden. Und viel "schnickschnak" hat das normale DBGrid ja nicht. Zeige doch mal etwas von deinem Quellcode. |
Re: mysql + zeos + dbgrid problem !
Hai Fischkollege ;-)
ich hab mich jetzt mal an toms beispiel gehalten, deins habe ich aber auch probiert.
Delphi-Quellcode:
so sieht mein code halt aus, danach halt zum aktuallisieren hab ich es mit z.b. ztbale1.refresh oder dbgrid1.refresh probriert, aber nix hat geholfen :-)
zquery1.Close;
zquery1.SQL.clear; zquery1.SQL.Text := 'SELECT * FROM blabla WHERE name = ''bla'''; zquery1.Open; das einzige wo ztable1.refresh funzt und sich das dbrid ändert ist wenn ich DELETE oder INSERT benutze nur halt bei SELECT nicht, ka was das sein kann , evtl versteh ich ja da was nicht Wobei der SELECT Befehl ansich ausgeführt wird , weil ich über zqery1.fields[x] an das ergebnis komme, was auch leicht zu überprüfen ist da ich nur 4 einträge in der tabelle habe , evtl hab ich ja nur was alsch verknüpft, was ich aber auch nicht glaube da ja DELETE und INSERT gehen . so sehen meine verknüpfungen aus : dbgrid1 -> datasource1 zquery1 -> datasource1 ztable1 -> datasource1 datasource1 -> ztable1 evtl hilft das ja |
Re: mysql + zeos + dbgrid problem !
Hallo SeeAal,
Zitat:
Grüße vom marabu |
Re: mysql + zeos + dbgrid problem !
ja soll es , ist das falsch ? und wenn ja erklär es mir bitte :-)
|
Re: mysql + zeos + dbgrid problem !
Mit der Einstellung steuerst du Master-Detail-Beziehungen. Da du aber auch DataSource1.DataSet auf zTable1 gesetzt hast, gehe ich davon aus, dass du das eher nicht willst. Ansonsten musst du mal die Online-Hilfe zur Eigenschaft DataSource einer Table/Query genau lesen.
marabu |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:57 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 by Thomas Breitkreuz