Autor Beitrag
Beacon
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Di 30.11.10 22:34 
Hallo,

Vielleicht kann mir ja jemand helfen. Ich habe jetzt meine MySQL DB COnnection soweit hinbekommen, dass die Daten schön im DBGrib ankommen (Setup siehe Screenshot).
Nun Frage ich mich allerdings, wie kann ich zB das initiale Statement des Datasets ändern? EGal, was ich mache, entweder bekomme ich irgendwelche dubiosen Fehlermeldungen, oder es passiert garnichts.

Ich würde gern einfach beim Buttonklick haben, dass statt "Select * from wp_terms", welches momentan im Dataset hinterlegt ist, ein "Select * from wp_posts" ausgeführt wird, und sich das grid dann auch ändert. Hab ich da den falschen Ansatz? Ich raffs einfach nicht :(
Einloggen, um Attachments anzusehen!
bummi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1248
Erhaltene Danke: 187

XP - Server 2008R2
D2 - Delphi XE
BeitragVerfasst: Di 30.11.10 23:02 
Hast Du Feldkomponenten veröffentlicht...
Hast Du die Datasets vorher geschlossen...
Wie änderst Du den SQL...
Wie heißen die Fehler (man kann den Text im Fehlerfenster auch per STRG +C kopieren) ....

_________________
Das Problem liegt üblicherweise zwischen den Ohren H₂♂
DRY DRY KISS
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6393
Erhaltene Danke: 147

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Mi 01.12.10 09:33 
user profile iconbummi hat folgendes geschrieben Zum zitierten Posting springen:
Hast Du die Datasets vorher geschlossen...

Und vor allem nach der Änderung des Statements wieder geöffnet. Die Änderung des Statements alleine hilft noch nicht.
Beacon Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Mi 01.12.10 11:47 
Hab ich so ausprobiert...

Dataset geschlossen, Statment geändert, wieder geöffnet. Sogar Datagrid refreshed, aber es hatte keinerlei auswirkung.
Habs jetzt mal mit SQLQuery gemacht, und da gings auf anhieb, ohne gross was schliessen zu müssen, etc
jaevencooler
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 166
Erhaltene Danke: 6

MS-DOS,Win32, Win95, Win 98, Me,XP, Linux, NT4.0, NT 2000-2008, Vista, Windows 7
Turbo Pascal,D1 Enter,D2 Enter,D3 Enter,D5 Enter, Kylix, D2007, PL/SQL, MS/SQL, Delphi 2010, Delphi XE
BeitragVerfasst: Mi 01.12.10 12:27 
Moin,

also folgende Reihenfolge solltest Du einhalten:

Dataset.DisableControls; // Schneller bei datensensitiven elementen

Dataset.close;
Dataset.sql.clear; !!
Dataset.sql.add(Neues SQL Statement)
Dataset.open;

Dataset.EnableControls; // Nur anwenden wenn Du vorher DisableControls benutzt hast

So sollte es funtionieren.


Cu Michael

_________________
Wissen ist Macht, nichts wissen macht auch nichts...
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19314
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 01.12.10 12:53 
user profile iconjaevencooler hat folgendes geschrieben Zum zitierten Posting springen:
Dataset.sql.clear; !!
Dataset.sql.add(Neues SQL Statement)
Besser gleich:
ausblenden Delphi-Quelltext
1:
DataSet.SQL.Text := 'Neues SQL Statement';					
Denn es wird AFAIR beim stückweisen Hinzufügen mit Add z.B. bereits ausgewertet, ob Parameter enthalten sind. Deshalb geht es schneller und vor allem sicherer, wenn man das komplette Statement direkt zuweist.
jaevencooler
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 166
Erhaltene Danke: 6

MS-DOS,Win32, Win95, Win 98, Me,XP, Linux, NT4.0, NT 2000-2008, Vista, Windows 7
Turbo Pascal,D1 Enter,D2 Enter,D3 Enter,D5 Enter, Kylix, D2007, PL/SQL, MS/SQL, Delphi 2010, Delphi XE
BeitragVerfasst: Mi 01.12.10 14:27 
Moin,

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
user profile iconjaevencooler hat folgendes geschrieben Zum zitierten Posting springen:
Dataset.sql.clear; !!
Dataset.sql.add(Neues SQL Statement)
Besser gleich:
ausblenden Delphi-Quelltext
1:
DataSet.SQL.Text := 'Neues SQL Statement';					
Denn es wird AFAIR beim stückweisen Hinzufügen mit Add z.B. bereits ausgewertet, ob Parameter enthalten sind. Deshalb geht es schneller und vor allem sicherer, wenn man das komplette Statement direkt zuweist.



und was macht Dataset.sql.clear :roll:

Cu Michael

_________________
Wissen ist Macht, nichts wissen macht auch nichts...
zuma
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 660
Erhaltene Danke: 21

Win XP, Win7, Win 8
D7 Enterprise, Delphi XE, Interbase (5 - XE)
BeitragVerfasst: Mi 01.12.10 14:41 
user profile iconjaevencooler hat folgendes geschrieben Zum zitierten Posting springen:


und was macht Dataset.sql.clear :roll:

Cu Michael


Es macht den Sourcecode länger ;)

_________________
Ich habe nichts gegen Fremde. Aber diese Fremden sind nicht von hier! (Methusalix)
Warum sich Sorgen ums Leben machen? Keiner überlebts!
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19314
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 01.12.10 16:48 
user profile iconjaevencooler hat folgendes geschrieben Zum zitierten Posting springen:
und was macht Dataset.sql.clear :roll:
Es löscht den bisherigen Inhalt, woraufhin das erste Mal die (zugegebenermaßen kurze) Analyse gestartet wird, und dann beim Add wird diese erneut gestartet.
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10183
Erhaltene Danke: 1256

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mi 01.12.10 18:34 
Moin!

Bitte ändere den Titel des Topics, da er wenig über das eigentlich Thema verrät. Hier der entsprechende Absatz aus den Richtlinien:
1.2 Beiträge:
Bitte formuliere den Betreff Deiner Beiträge so, dass andere Mitglieder anhand dieser bereits das eigentliche Thema festmachen können. Beiträge wie etwa "Eine Anfängerfrage" oder "Weiß jemand, wie das geht?" lassen den Leser im Unklaren darüber, was das Thema der Diskussion ist.[...]
Einfach oben bei Deinem ersten Beitrag auf user defined image oder user defined image klicken und den Titel ändern. Danke Dir!

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.