![]() |
Datenbank: BDE • Version: 5.2.xyz • Zugriff über: Delphi Std DB Komponenten
0.0 ist kein gültiger Zeitstempel
Ich hab ne leere Tabelle mit ein paar Feldern. Eins davon ein Datumsfeld(Nicht DateTime, sondern Date)
Da ich jetz nix besseres gefunden hab, sprich ich das Feld über .AsDateTime an um den Wert auf Now zu setzen. Dummerweise hab ich jetz als Datum den 15.8.11572 drin und bekomm beim Auslesen als Datetime eben die Meldung 0.0 ist kein gültiger Zeitstempel. Wenn ich das Feld auf DateTime setze geht es. Was für Werte erwartet denn so ein Date-Feld? :cyclops: |
AW: 0.0 ist kein gültiger Zeitstempel
Welche DB ist das denn? Paradox?
|
AW: 0.0 ist kein gültiger Zeitstempel
Zitat:
|
AW: 0.0 ist kein gültiger Zeitstempel
Ja genau Paradox, ich werds auch auf Datetime umstellen aber interessieren würds mich schon.
|
AW: 0.0 ist kein gültiger Zeitstempel
Ich hab bisher immer Probleme mit 'Date' gehabt, egal mit welcher DB ich gearbeitet habe. Inzwischen denke ich gar nicht mehr daran, 'Date' zu verwenden.
Inzwischen fühlt sich mein Haar viel kräftiger an. |
AW: 0.0 ist kein gültiger Zeitstempel
Na ja, unter Delphi ist ein DateTime Wert ein Fließkommawert. Der ganzzahlige Anteil repräsentiert den Tag und der Nachkommaanteil den Bruchteil eines Tages, also die Zeit. Da der Datentyp Date keine Zeitangabe besitzt, wird er, vermute ich mal, nicht durch eine Fließkommazahl repräsentiert, sondern durch einen Integer. Und damit wäre eine Fließkommazahl kein gültiger Date Wert.
|
AW: 0.0 ist kein gültiger Zeitstempel
Verstehe. Und beschreiben klappt weil am Anfang 0 drinsteht was auch als DateTime interpretiert werden kann.
Dann schreibt man ne Fliesskommazahl rein die die Bits weis Gott wie belegt. Diese Anordnung von Bits wird ab dann beim Auslesen als Integer interpretiert und ergibt so ein Datum. |
AW: 0.0 ist kein gültiger Zeitstempel
Das ist meine Vermutung.
|
AW: 0.0 ist kein gültiger Zeitstempel
Es kann auch mit dem SQL-Dialekt zusammenhängen. SQL-Dialekt #1 hat ausschließlich DATE-Felder unterstützt, die - ungeachtet ihres Namens - sehr wohl Datum und Uhrzeit aufnehmen konnten. Mit SQL-Dialekt #3 hat sich das geändert, neben DATE kamen die Typen TIME und TIMESTAMP hinzu. Mit der Folge, dass DATE tatsächlich nur noch das Tagesdatum gespeichert hat.
Nun ist SQL-Dialekt #1 aus heutiger Sicht reichlich veraltet, aber es existieren "da draußen" noch genug Datenbanken, die mit diesem alten Dialekt erstellt wurden und nur das ist maßgeblich. Dieser Zustand lässt sich nicht einfach durch das Setzen eine Flags umschalten. |
AW: 0.0 ist kein gültiger Zeitstempel
Zitat:
![]() Grüße Jan Bei gesteigertem Interesse: ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz