È comune usare "timestamp" per significare con fuso orario e "datetime" per significare senza fuso orario ?
È comune usare "timestamp" per significare con fuso orario e "datetime" per significare senza fuso orario ?
No.
Solitamente un datetime
è un tipo di dati o una struttura dati, come mezzo per memorizzare i momenti nella memoria / disco. Un timestamp è un record individuale che indica un istante nel tempo in cui qualcosa è avvenuto, praticamente sempre nel passato.
Spesso potresti usare un datetime
per memorizzare un timestamp, ma non tutti i datetime
record sarebbero timestamp. L'istante in cui un distributore automatico eroga una bevanda potrebbe essere registrato con un record datetime
e sarebbe un timestamp. Tuttavia, un datetime
potrebbe anche registrare quando l'appuntamento del dentista della prossima settimana è, ma non è sicuramente un timestamp. Il momento in cui ho cliccato su "Pianifica" per pianificare l'appuntamento sarebbe un timestamp, separato da quando l'appuntamento è.
Entrambi questi concetti possono essere consapevoli del fuso orario o ingenui. Molti sistemi hanno le loro strutture datetime includono informazioni sul fuso orario, molti altri no e gli sviluppatori sono responsabili di tenerne traccia altrove, se non del tutto. Un distributore automatico può probabilmente funzionare bene considerando l'ora locale per tutto. Una rete di social media globale, probabilmente non così tanto.
Non sono sicuro che questo problema sia indipendente dal linguaggio, ma esiste una pratica comune di gestire questi tipi in modo diverso quando si parla di fuso orario:
MySQL converts TIMESTAMP values from the current time zone to UTC for storage, and back from UTC to the current time zone for retrieval. (This does not occur for other types such as DATETIME.)
Leggi altre domande sui tag language-agnostic terminology time