Best practice DBExpress 4 / Allg. Fragen (Rad Studio 2007)

27/09/2007 - 12:21 von Thomas Zangl | Report spam
Hi!

Nach langer Abstinenz und Ausfluegen in div. andere Programmiersprachen
bin ich wieder bei Delphi gelandet.

Fuer ein Projekt, welches MySQL als DB verwendet, wuerde ich gerne dbx
als Engine verwenden.

Einige Dinge sind ja jetzt doch anders als damals mit BDE... gibts das
Datenmodul noch?

Wie sieht so eine Verkettung von DBX Komponenten aus, von der Connection
zum z.b. DBGrid?

Ein "minimal" Beispiel schaut bei mir so aus:
SQLConnection -> SQLDataSet -> DataSetProvider -> ClientDataSet ->
DataSource -> DBGrid

Bissi viel Overhead? Desweiteren ergibt sich ein Problem mit dem insert:
with ClientDataSet1 do begin
Insert;
FieldByName('Vorname').Value := dbVorname.Text;
FieldByName('Nachname').Value := dbNachname.Text;
FieldByName('Benutzer').Value := dbBenutzer.Text;

Post;
end;

Die Daten sind dann im DBGrid sichtbar, aber am Server kommen sie nicht
an. Warum?

Was ist also die "best practice" um via Delphi und dessen DB Komponenten
(vor allem die visuellen) Zugriff auf eine MySQL DB zu erhalten? Wie
kann ich diesen DB Zugriff am Besten zentralisieren?

Danke fuer Input! :))

Lg,
-
,yours Thomas Zangl, Bakk.rer.soc.oec. - thomas@tzis.net -
- Freelancer - IT Consulting & Software Development -
- Student of Software Development-Economy (Master) -
 

Lesen sie die antworten

#1 Arno Garrels
27/09/2007 - 14:01 | Warnen spam
Thomas Zangl wrote:
Wie sieht so eine Verkettung von DBX Komponenten aus, von der
Connection zum z.b. DBGrid?

Ein "minimal" Beispiel schaut bei mir so aus:
SQLConnection -> SQLDataSet -> DataSetProvider -> ClientDataSet ->
DataSource -> DBGrid



SQLConnection -> SimpleDataSet -> DataSource -> DBGrid
Ist aber auch nichts Anderes.

Die Daten sind dann im DBGrid sichtbar, aber am Server kommen sie
nicht an. Warum?



Erst die Methode ApplyUpdates schreibt Änderungen zurück auf den
Server.


Was ist also die "best practice" um via Delphi und dessen DB
Komponenten (vor allem die visuellen) Zugriff auf eine MySQL DB zu
erhalten?



? ich benutze haupsàchlich Firebird.

Wie kann ich diesen DB Zugriff am Besten zentralisieren?



DBExpress ist eine Möglichkeit, ZEOS DBO eine andere.
ZEOS unterstützt zur Zeit mehr Datenbanksysteme als DBExpress,
z.B. auch Firebird.

Arno Garrels

Ähnliche fragen