![]() |
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 |
Re: mysql + zeos + dbgrid problem !
Hö? Das kann ja nicht funktionieren.
Du mußt schon die DataSet Eigenschaft für die DataSource auf die ZQuery stellen, denn du filterst ja über die Query und nicht über ZTable. Grüße, Tom |
Re: mysql + zeos + dbgrid problem !
ES GEHT ! :-)
das db grid wird aktuallisiert *g* ich idiot hab ja auch ne ztable gehabt und die auch mit datasource verbunden , und das war der fehler ztable brauch ich gar nicht, nur zquery mit datasource verbinden und des dbgrid mit dem datasource fertig :-) jetzt bin ich voll der checker was die sache angeht :D ;-) und danke an die , die mir geholfen haben :-) |
Re: mysql + zeos + dbgrid problem !
ouh hatte vorher nicht aktuallisiert :-) nen IRC - kollege sagte es mir grad
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:14 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