Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Datum/Uhrzeit speichen und sortieren.. (https://www.delphipraxis.net/192885-datum-uhrzeit-speichen-und-sortieren.html)

erich.wanker 30. Mai 2017 14:37

Datenbank: Firebird • Version: 2.5 • Zugriff über: ZeosLib

Datum/Uhrzeit speichen und sortieren..
 
Hallo Leute,

Ich hole via Indy Mails von einem Pop3-server ab ..

dann speichere ich das Maildatum:
MAILDATENBANK.FieldByName('DATUM').AsDateTime:=Msg .Date; -> In der Datenbank kommt dann z-B. "30.05.2017" an ..

Wie kann ich die Uhrzeit der Mail auch noch abspeichern .. UND wie kann ich dann die Mails "order by Datum & Uhrzeit" anzeigen lassen ?

Vielen Dank für Hinweise

Bernhard Geyer 30. Mai 2017 14:46

AW: Datum/Uhrzeit speichen und sortieren..
 
Erweitere dein Feld DATUM zu einem Feld das Datum und Uhrzeit speichern kann.

erich.wanker 30. Mai 2017 15:05

AW: Datum/Uhrzeit speichen und sortieren..
 
hi ...

msg.Date ist ja ein Extended .. Kann ich den Wert via "AsSQLTimeStamp" in ein TIMESTAMP Feld speichern?

mkinzler 30. Mai 2017 15:13

AW: Datum/Uhrzeit speichen und sortieren..
 
Im Extended steckt schon beides. Im Ganzzahlbereich das Datum und im Nachkommabereich die Zeit.

Luckie 30. Mai 2017 19:30

AW: Datum/Uhrzeit speichen und sortieren..
 
Ich würde Datum und Uhrzeit als Timestamp abspeichern und nicht formatiert.

DeddyH 30. Mai 2017 19:35

AW: Datum/Uhrzeit speichen und sortieren..
 
Ein DateTime-Feld ist ja nicht formatiert, das ist nur die Darstellung. Wie das intern gespeichert wird, hängt AFAIK vom DBMS ab.

Luckie 30. Mai 2017 19:42

AW: Datum/Uhrzeit speichen und sortieren..
 
Hm.
Zitat:

In der Datenbank kommt dann z-B. "30.05.2017" an
Das habe ich so interpretiert, dass es formatiert in der DB steht.

DeddyH 30. Mai 2017 19:48

AW: Datum/Uhrzeit speichen und sortieren..
 
So sieht das aus, wenn man mit einem Admin-Tool wie IBExpert oder FlameRobin reinschaut.

himitsu 30. Mai 2017 19:58

AW: Datum/Uhrzeit speichen und sortieren..
 
Zugewiesen wurde es erstmal "unformatiert" als TDateTime, also als Float.

Was in der DB an kommt, hängt erstmal von dem Feld ab.
* Wie ist die Spalte/Tabelle definiert?

Und dann auch von der Zugriffskomponente und dem DBMS, falls der Wert konvertiert werden muß.

Zitat:

In der Datenbank kommt dann z-B. "30.05.2017" an
Wenn das wirklich als VARCHAR/TEXT/... in der DB steht, dann ist dort schonmal der erste Fehler.

Man kann Datums-/Zeit-Werte als Integer (Sekunden/Millisekunden/... seit Tag X speichern), oder als Float (TDateTime ist z.B. Tage seit Tag X), als String oder sonstwie.

Alle Integer-/Float-Werte kann man problemlos sortieren, genauso wie normale Zahlen.
Und bei einem String wird Zeichen für Zeichen verglichem, also wenn man soeinen Mist bat, dann sollte das auch mit festen Längen und von Groß nach Klein gespeichert sein, um "richtig" verglichen werden zu können. (YYYY-MM-DD HH:MM:SS.zzz)

p80286 30. Mai 2017 21:50

AW: Datum/Uhrzeit speichen und sortieren..
 
Tip am Rande, stell das Datumsformat von Windows auf YYYY-MM-DD um.
Bei jedem Datum, das nicht diesem Format folgt, kannst Du sicher sein, das da jemand seine Finger im (Format-)Spiel hat.

Gruß
K-H


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:25 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz