Ergebnis von TQuery an DBGrid übergeben und/oder in Datei schreiben
-
Hi,
bin mal wieder am basteln, und dabei leider wieder mal stecken geblieben.
Ich habe eine Datenbank, die als .db Datei vorliegt. Diese Datenbank wird in einem DBGrid angezeigt. Nun möchte ich gerne verschiedene Sichten auf die Datenbank ermöglichen. Wird eine Sicht gewählt rufe ich ein TQuery mit dem entsprechenden SQL Statement auf. Funktioniert auch alles, aber wie weise ich jetzt das Ergebnis der Query dem DBGrid zu?Und noch ne andere Frage, wie kann ich einen Table den ich per SELECT zusammengebastelt in meine .db Datei schreiben? (Und dabei von mir aus auch den alten table überschreiben.)
Viele Grüße,
Alpha
-
Hallo
Funktioniert auch alles, aber wie weise ich jetzt das Ergebnis der Query dem DBGrid zu?
Indem du das DBGrid mit einer DataSource verbindest, die auf diese Query-Komponente mit dem Ergebnis zeigt.
Und noch ne andere Frage, wie kann ich einen Table den ich per SELECT zusammengebastelt in meine .db Datei schreiben? (Und dabei von mir aus auch den alten table überschreiben.)
Mit MySQL kannst du sows schreiben
CREATE TABLE <TableName> SELECT ...Ob das bei Paradox auch geht, weiß ich aber nicht.
Ansonsten alle bestehenden Datensätze in der Zieldatenbank löschen und die einzelnen Quell-Datensätze per INSERT eintragenbis bald
akari
-
Moin
akari schrieb:
Indem du das DBGrid mit einer DataSource verbindest, die auf diese Query-Komponente mit dem Ergebnis zeigt.
Hab ich versucht, und zwar so:
1: Query1->Close(); 2: Query1->SQL->Clear(); 3: Query1->SQL->Add("SELECT DISTINCT (IP) FROM 'test.db';"); 4: Query1->Open(); 5: 6: DataSource2->DataSet = Query1; 7: Table1->DataSource = DataSource2; 8: Table1->Active = false; 9: Table1->Active = true;Das wirft allerdings auf Zeile 7 die Fehlermeldung "E2247 Zugriff auf 'TDataSet::DataSource' nicht möglich".
Jemand ne Idee, was ich da falsch mach?Viele Grüße
Alpha
-
Ist Table1 ein DBGrid? Wenn ja, ist der Name sehr unglücklich gewählt und der Fehler unverständlich.
Wenn Nein, ist alles klar und ein Blick in die Hilfe zu TTable wird Dir zeigen, warum Du darauf nicht zugreifen kannst.Gruß,
Alexander
-
?? Ein TTable ist ja auch kein TDBGrid...
-
Hallo
du must von den DBGrid auf die DataSource zugreifen, nicht von der Table/Query aus.
bis bald
akari
-
Uuuuups! My fault

Ihr habt natürlich recht, Table1 ist mein TTable, nicht mein DBGrid.
Knapp daneben und so
Danke, danke
Alpha