Einzelnen Beitrag anzeigen

TheFrog

Registriert seit: 24. Mär 2009
145 Beiträge
 
Delphi 11 Alexandria
 
#1

Required-Property eines Fields in TClientDataSet ändern

  Alt 29. Apr 2009, 10:02
Datenbank: Firebird embedded • Version: 1.5 • Zugriff über: IBX-Komponenten
Ich ermittle aus zwei Tabellen über einen Join eine Datenmenge und weise diese einem ClientDataSet zu.

In einer Tabelle existiert ein Feld mit der Eigenschaft NOT NULL. Im ClientdataSet wird jetzt logischerweise die Property Required des entsprechenden Felds auf True gesetzt.

Nun zum Problem:

In der Datenbank steht in dem Feld ein Leerstring, also eigentlich <> NULL. Wenn ich im ClientDataSet nun irgendeinen Wert ändere und ein Post aufrufe, so erhalte ich eine Fehlermeldung "Field value required". Auch klar, weil ich für das NOT NULL-Feld einen Wert brauche.

Nun dachte ich, ich kann nachträglich die Eigenschaft Required des Feldes auf False setzen, aber irgendwie wird die Änderung nicht beachtet, d.h. ich erhalte auch nach dem setzen der Property Required := False noch den Fehler.

Frage:
Warum wird ein Leerstring im Dataset als NULL interpretiert?

.. und noch wichtiger: Wie kann ich die Required-Eigenschaft setzen?

Merci, Hans.
  Mit Zitat antworten Zitat