Entwickler-Ecke

Datenbanken - TSQLClientDataset Datenzugriff


jvoertzen - Do 17.07.03 13:34
Titel: TSQLClientDataset Datenzugriff
Hi,

Ich habe eine Frage, ich habe mir eine MySQL Datenbank eingerichtet, und greife darauf über eine TSQLClientDataSet Komponente zu.
Da ich Daten aus mehreren Tabellen anzeigen möchte, habe ich mir eine SELECT Anweisung geschrieben die Alle Werte in einem DBGrid anzeigt.
Soweit so gut, nur möchte ich auch Werte in der Datenbank ändern löschen und hinzufügen, das geht wunderbar mit meinen SQL Anweisungen oder auch Wenn ich nur eine Tabelle als Datenquelle nehme, nur wie kann ich das hinbekommen, wenn ich mehrere Tabellen nutze?

Als Lösung wollte ich einfach die Werte die Veränderbar sind in Edit Feldern anzeigen, und dann meine SQL Befehle mit diesen Werten ausführen, aber wenn ich mir die Daten anzeigen lasse, z.b. mit

Delphi-Quelltext
1:
2:
 
Edit.Text:= .SQLClientDataSet.FieldByName('Name').AsString;

Dann Wir das Edit Feld nur aktualisiert, wenn ich es vorher angeklickt habe, und dann auch nur auf den vorherigen Datensatz.

Vielleicht hat jemand ja eine Idee die mir weiterhilft.

mfg John von Oertzen.


derDoc - Do 17.07.03 17:01

Ein bischen mehr Quellcode wäre hilfreich. (SQL-Abfrage)

Mit welchem Ereignis rufst du denn die SQL Abfragen auf?


jvoertzen - Fr 18.07.03 11:53
Titel: SQL Anfrage
Ich habe die SQL Anweisung direkt in den Command Text geschrieben, und den SQLClientDataset direkt auf Aktive gesetzt.
ich weise den SQLClientDataset dann erst später dem TDataSource Objekt zu.

Meine Select Anweisung sieht folgendermaßen aus:
Zitat:

"SELECT Artikel.ArtikelNr, Kurzbeschreibung, EAN, Ist, lagerort FROM Artikel, Artikel_Lager, Bestand WHERE Artikel.artikelNr = Bestand.ArtikelNr and Bestand.ArtikelNr = Artikel_Lager.ArtikelNr;"

Ein Fehler den ich entdeckt habe war das ich den Feldern Namen zugewiesen hatte.

Weiß jemand ob man die Anfrage so überhaupt automatisch über den SQLDataset zu verändern ist?

mfg John von Oertzen.