Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.035 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#5

Re: Feld des Wertes Null (String)

  Alt 25. Apr 2005, 10:32
Moin Moin,

das hat nix mit der Datenbank zu tun, sondern damit, dass du versuchst, mit dem Ausdruck
if tabS.FieldValues['gk8'] <> '') einen Variant, der Null sein kann, mit einem String zu vergleichen, und dann scheppert's!

Besser wäre es so (Delphi überprüft standardmäßig boolsche Ausdrücke von links nach rechts und bricht ab, wenn er eindeutig ist):
Delphi-Quellcode:
begin
  dbFach.Items.Clear;

  dbFach.Items.Add(tabS2.FieldValues['lk1']);
  dbFach.Items.Add(tabS2.FieldValues['lk2']);

  dbFach.Items.Add(tabS2.FieldValues['gk1']);
  dbFach.Items.Add(tabS2.FieldValues['gk2']);
  dbFach.Items.Add(tabS2.FieldValues['gk3']);
  dbFach.Items.Add(tabS2.FieldValues['gk4']);
  dbFach.Items.Add(tabS2.FieldValues['gk5']);

  if not tabS.FieldValues['gk6'].IsNull and (tabS.FieldValues['gk6'] <> '') then
    dbFach.Items.Add(tabS2.FieldValues['gk6']);
  if not tabS.FieldValues['gk7'].IsNull and (tabS.FieldValues['gk7'] <> '') then
    dbFach.Items.Add(tabS2.FieldValues['gk7']);
  if not tabS.FieldValues['gk8'].IsNull and (tabS.FieldValues['gk8'] <> '') then
    dbFach.Items.Add(tabS2.FieldValues['gk8']);
  if not tabS.FieldValues['gk9'].IsNull and (tabS.FieldValues['gk9'] <> '') then
    dbFach.Items.Add(tabS2.FieldValues['gk9']);
end;
Somit, wird erst überprüft, ob das Feld Null ist. Wenn dies nicht so ist, wird überprüft, ob der String nicht leer ist.

MfG
Stevie
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat