bigpoint Geschrieben 16. Dezember 2002 Geschrieben 16. Dezember 2002 Wie frage ich ColeDateTime ob in DB NULL steht ??
bigpoint Geschrieben 17. Dezember 2002 Autor Geschrieben 17. Dezember 2002 vielleich so if(!dLetzteAend.ParseDateTime(NULL,VAR_DATEVALUEONLY )){ strErstelldatum=""; }else strErstelldatum = dErstellDatum.Format("%c");
Klotzkopp Geschrieben 17. Dezember 2002 Geschrieben 17. Dezember 2002 Du solltest einen NULL-Wert möglichst vor irgendwelchen Konvertierungen abfangen. Wenn ich mich richtig erinnere, hast Du doch ein DATE, dass Du in den COleDateTime konvertierst. Was steht denn in dem DATE, wenn in der Datenbank NULL steht?
bigpoint Geschrieben 17. Dezember 2002 Autor Geschrieben 17. Dezember 2002 Genau vieleich so, daß meine Datumvariable ursprünglich von DATE kommt und es ist nichts anderes als ein double Wert //Überprüfen ob in DB NULL Wert steht if(pRs->m_dtLetzteAend <= NULL){ strLetzteAend=""; }else strLetzteAend = dLetzteAend.Format("%c"); In DATE steht minus Wert wenn in DB NULL steht
bigpoint Geschrieben 17. Dezember 2002 Autor Geschrieben 17. Dezember 2002 Genauer: -6.2774385622042e+066
Klotzkopp Geschrieben 17. Dezember 2002 Geschrieben 17. Dezember 2002 Originally posted by 007ski Genauer: -6.2774385622042e+066 Das ist der Wert, mit dem bei einem Debug-Build uninitialisierter Freispeicher gefüllt wird. Darauf kann man sich also nicht verlassen. Wie sieht es aus, wenn Du vor dem MoveNext dem DATE den Wert -1.0 zuweist? Was für ein Wert steht dann nach dem MoveNext drin, wenn in der Datenbank NULL stand?
bigpoint Geschrieben 17. Dezember 2002 Autor Geschrieben 17. Dezember 2002 Originally posted by Klotzkopp Das ist der Wert, mit dem bei einem Debug-Build uninitialisierter Freispeicher gefüllt wird. Darauf kann man sich also nicht verlassen. Wie sieht es aus, wenn Du vor dem MoveNext dem DATE den Wert -1.0 zuweist? Was für ein Wert steht dann nach dem MoveNext drin, wenn in der Datenbank NULL stand? Ich weis es nicht denn komischer weise steht er immer dann wenn NULL in DB steht ;-( Sorry für die Frage ( ich bin noch leider nicht so weit mit vc++ ) aber was hat MoveNext() mit Datum zutun ??? MoveNext (), MoveLast() usw zeigt nur entsprechenden Datensatz sonst nichts oder ?????
Klotzkopp Geschrieben 17. Dezember 2002 Geschrieben 17. Dezember 2002 Originally posted by 007ski Sorry für die Frage ( ich bin noch leider nicht so weit mit vc++ ) aber was hat MoveNext() mit Datum zutun ??? MoveNext (), MoveLast() usw zeigt nur entsprechenden Datensatz sonst nichts oder ????? MoveNext und MoveLast zeigen gar nichts an. Aber sie füllen die an die Datenbankfelder gebundenen Variablen mit Werten, darunter auch dein DATE. Die Frage ist jetzt, ob der Wert überhaupt geändert wird, wenn in diesem Feld ein NULL-Wert steht, oder ob der Wert so gelassen wird, wie er ist. Deshalb solltest Du die DATE-Variable mit einem Wert vorbelegen. Wenn der Wert hinterher immer noch gleich ist, dann bewirkt ein NULL-Wert keine Änderung. Das könnte man als Erkennungsmerkmal heranziehen.
bigpoint Geschrieben 17. Dezember 2002 Autor Geschrieben 17. Dezember 2002 OK habe ich verstanden, also der Wert auf jeden fall hinterher immer noch gleich ist.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden