[英]How do different structures for storing date and time in programming languages and databases work?
鑒於語言和數據庫使用不同的結構來存儲日期和時間,當將日期和時間值從編程語言移動到數據庫時,哪段代碼負責轉換日期和時間數據結構,反之亦然?
大多數系統將 DATETIME 存儲為浮點數。 小數點左邊的值是從第零 (0) 天算起的天數。 零日可以是任何事情。 在 Unix 中,第 0 天是 1/1/1970。 出生年份Unix。 然而,這對普通用戶來說不是很直觀。 Oracle 使用實際年份 0 和 SQL 服務器使用 1/1/1900。
將數字 0 轉換為 DATETIME,您將獲得該系統第 0 天。
小數點右邊的數字是時間。 這可以以毫秒、微秒為單位記錄,無論您的系統可以處理的粒度如何。
這種方法最好的部分是日期數學變得非常簡單。 將數字轉換為實際日期和時間是非常復雜的。
大多數編程語言都會遵循同樣的模式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.