muszę drogę do serializacji i termin unserialize które są potencjalnie daleko w przeszłości, na przykład -10000
Zapisywanie daty z więcej niż 4-cyfrowa lat
raz pierwszy spojrzeć na ISO8601, ale nie wydaje się do obsługi lat z więcej niż czterema cyframi. (Albo przynajmniej, biblioteki Python próbowałem nie.)
różnych roztworów mogę myśleć:
- zmian przed rokiem szeregowania/deserializacji, dać go do parsowania/formatowania biblioteki i naprawić je z powrotem (dźwięki hacky)
- określić mój własny format, jak
year:month:day:hour:minute:second
(który jest odkrywanie koła na nowo, ponieważ mam do obsługi stref czasowych, itd.) - Użyj znacznik czasu UNIX bez granic lub coś równoważnego (może przelewać się niektóre języki programowania, a wciąż rzeczy w strefie czasowej)
- Przechowuj daty przed
-9999
(lub0
) inaczej niż po, ponieważ nie było w tym czasie problemu dotyczącego strefy czasowej/roku przestępnego/.... (dwa różne formaty w tym samym miejscu)
Czy widzisz inny sposób, który byłby lepszy od tych? Lub polecić jedną z nich?
To pytanie na DBA mogą być przydatne: http://dba.stackexchange.com/questions/7077/best-way-to-handle-dates-before-to-1000-ad-in-mysql – naththedeveloper
"* biblioteki python, których próbowałem nie. *" - Powiedz lub pokaż nam, co próbujesz do tej pory i jakie były wyniki. –