Ho bisogno di un modo per serializzare e date unserialize che sono potenzialmente molto lontano nel passato, per esempio -10000
date Memorizzazione con più-che-4 cifre anni
ho guardo ISO8601, ma non sembra per supportare anni con più di quattro cifre. (O almeno, pitone librerie ho provato non lo fanno.)
Le diverse soluzioni che posso pensare:
- cambiamento l'anno prima la serializzazione/deserializzazione, dare al parsing/formattazione biblioteca e risolvere il problema indietro (sembra hacky)
- definire il mio proprio formato, come
year:month:day:hour:minute:second
(che è reinventare la ruota, dal momento che ho per gestire fusi orari, ecc) - Utilizzare un timestamp UNIX, senza limiti o qualcosa di equivalente (può traboccare in alcuni linguaggi di programmazione e ancora il materiale del fuso orario)
- Le date di memorizzazione precedenti allo
-9999
(o0
) differiscono rispetto a quelle successive, poiché non vi era alcun problema di fuso orario/anni bisestili/... in quel momento. (due formati diversi nello stesso posto)
Vedi qualche altro modo migliore di questi? O consigliamo uno di quelli?
Questa domanda sulla DBA può essere utile: http://dba.stackexchange.com/questions/7077/best-way-to-handle-dates-prior-to-1000-ad-in-mysql – naththedeveloper
"* librerie python che ho provato non. *" - Per favore, dimmi o mostraci cosa hai provato finora e quali sono stati i risultati. –