Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Frage zu TEdit vs. TDBEdit (https://www.delphipraxis.net/164515-frage-zu-tedit-vs-tdbedit.html)

Frickler 16. Nov 2011 14:04

Datenbank: Egal • Version: Egal • Zugriff über: Egal

Frage zu TEdit vs. TDBEdit
 
Ich lese hier immer öfter, man möge keine TDBEdits verwenden für die Dateneingabe und -änderung, sondern halt normale TEdits. Wie aber wird dann die richtige Formatierung und Validierung erreicht? In ein TDBEdit, welches an einem Float-Feld "hängt", kann ich nur Zahlen eingeben; bei einem TEdit muss ich aber extra OnKeyPress anpassen dafür (oder ein abgeleitetes TFloatEdit verwenden). Oder lässt man den Anwender - sozusagen im Webseiten-Modus - erstmal alles Mögliche eingeben und meckert dann beim Abschicken des Formulars?

F.

stahli 16. Nov 2011 15:04

AW: Frage zu TEdit vs. TDBEdit
 
Wenn man direkten Zugriff auf Datenbankfelder hat und in der DB schreiben kann, was sollte dann gegen einen DBEdit-Einsatz sprechen?
Natürlich kann man auch andere Wege gehen aber dann sollte man dafür spezielle Gründe haben (spezielle GUI-Designs oder Verwendung von Objekten eines ORB o.ä.). Grundsätzlich würde ich DBEdit nicht ablehnen.

Stevie 16. Nov 2011 17:26

AW: Frage zu TEdit vs. TDBEdit
 
Ich persönlich halte den ganzen DataSet fokusierten Stil aus verschiedenen Gründen (u.a. umständliche Trennung von UI und BL, oft schlechte Testbarkeit, problematisch bei Multitier) für schlecht.

Mit den DBControls legt man sich darauf fest, dass man immer nur über eine DataSource ein TDataSet Derivat editiert. Es gibt zwar ObjectDataSets und so, aber man lässt sich auf diese Abhängigkeit/Einschränkung ein.

Wenn man sich dessen im Klaren ist und auch nicht vor hat, irgendwann mal keine Datasets durch die Gegend zu schieben, sondern nur Objektlisten oder einzelne Objekte, die man anzeigen möchte (ohne die angesprochene Krücke des ObjectDataSets), dann ist das völlig in Ordnung.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:27 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz