| Autor |
Beitrag |
Olliiee
Hält's aus hier
Beiträge: 3
|
Verfasst: So 27.04.03 18:27
Moin moin,
hab ein sehr komisches Problem, finde ich zumindest.
Habe eine Tabelle mit einem Feld worin das aktuelle Datum gespeichert werden, das Feld ist vom Typ 'Date'. Will ich nun das Datum speichern, schreibt er mir jedes mal den 20.04.2027 rein! Das Datum an meinem Rechner stimmt auf jeden Fall, habe es testweise in einem Editfeld mal zwischen gespeichert. Dort steht das richtige, nur nicht in der Datenbank.
Wenn ich den Typ auf 'VarChar' änder klappt es auf jeden Fall, was ja klar ist, wenn es nur als Text übertragen wird.
Bin ich nur zu blöd oder hat das einen tieferen Sinn?
Gruß
Olli
|
|
UGrohne
      

Beiträge: 5502
Erhaltene Danke: 220
Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
|
Verfasst: So 27.04.03 18:32
Du solltest mal ein bisschen mehr Infos, wie z.B. einen Code-Schnipsel geben, in dem Du das Datum zuweist. Wär ganz hilfreich 
|
|
Olliiee 
Hält's aus hier
Beiträge: 3
|
Verfasst: So 27.04.03 19:15
Na ja, hätte ja sein können das einer so schon ne Idee hat
Quelltext 1: 2: 3:
| Qinsert.SQL.Clear; Qinsert.SQL.Add('INSERT INTO start_temp (..., DATUM,...) VALUES ('...,"'+date+'",....")'); Qinsert.ExecSQL; |
Die Var date ist "function Date: TDateTime;"
Muss ich das ganze vielleicht noch irgend umkonvertieren? So ala StrtoInt z.b.
|
|
Alfons-G
      
Beiträge: 307
Win XP Prof, Linux, Win 7
D5 Prof, D7 Architect, D2005 Architect, D2007 Architect
|
Verfasst: So 27.04.03 19:28
Welche Datenbank verwendest Du?
Datumsformate müssen keinesfalls kompatibel zueinander sein
In der Dokumentation Deiner DB sollte irgendwo stehen, wie ein Datum abgespeichert wird. Viele Systeme biten auch die Möglichkeit, ein Datum als String anzunehmen. Damit vermeidet man die meisten Schwierigkeiten.

_________________ Alfons Grünewald
|
|
UGrohne
      

Beiträge: 5502
Erhaltene Danke: 220
Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
|
Verfasst: So 27.04.03 19:59
Also ich würde Dir empfehlen gerade wegen der angesprochenen Inkompatibiltät noch einen DateToStr() zu machen, das müsste dann funktionieren, denn was Du da oben geschrieben hast, kann eignetlich gar nicht funktioneren da TDateTime vom Typ Double ist, Du müsster um das lauffähig zu bekommen, also einen FloattoStr() machen....
|
|
Olliiee 
Hält's aus hier
Beiträge: 3
|
Verfasst: So 27.04.03 20:03
Hmmm ... ich bin mit tot sicher, dass ich das mit dem DateToStr schon mal getestet habe, aber jetzt geht es. Na ja, auf jeden Fall besten Dank
PS: Es ist eine MySQL DB
|
|
grayfox
      
Beiträge: 800
win98, winXP
D4 Standard; D6 Personal
|
Verfasst: So 27.04.03 20:24
hallo olli!
kann es sein, dass bei deinem problem die 2k-anpassung von delphi dazwischenfunkt?
nachzulesen unter TwoDigitYearCenturyWindow.
hast schon mal versucht, mit ShortDateFormat die jahreszahl 4stellig einzurichten?
mfg, stefan
|
|