顯示
TIMESTAMP列的顯示格式與DATETIME列相同。
即顯示寬度都固定在19字元,格式為:
YYYY-MM-DD HH:MM:SS
範圍
- datetime 以
格式檢索和顯示DATETIME值。支援的範圍為YYYY-MM-DD HH:MM:SS
到1000-01-01 00:00:00
9999-12-31 23:59:59
- TIMESTAMP值不能早于1970或晚于2037
儲存
TIMESTAMP
- 4個位元組儲存
- 值以UTC格式儲存
- 時區轉化 ,存儲時對目前的時區進行轉換,檢索時再轉換回目前的時區
datetime
- 8個位元組儲存
- 實際格式儲存
- 與時區無關
時區影響
- 先插入一個資料insert into
values(now(), now());t8
- 改變用戶端時區(東9區,日本時區)。
- 再次顯示插入的資料,變化了,timestamp類型的資料 增加了 1個小時
timestamp
timestamp 預設允許為 “非空”(not null by default), 如果你在定義“ts TIMESTAMP DEFAULT NULL” 是非法的。 可以指定為空 null ,“ts TIMESTAMP NULL" ,這時可以在添加語句改變預設值。
ts2 TIMESTAMP NULL DEFAULT 0,
ts3 TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP
default (一個表中隻能有一個列選擇下面其中一種)
default CURRENT_TIMESTAMP
default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP
ON UPDATE 見上2