timestamp和datetime的相同點:
兩者都可用來表示yyyy-mm-dd hh:mm:ss型別的日期。
timestamp和datetime的不同點:
1>兩者的儲存方式不一樣
`對於timestamp:下面,我們來驗證一下它把客戶端插入的時間從當前時區轉化為utc(世界標準時間)進行儲存。
查詢時,將其又轉化為客戶端當前時區進行返回。
`對於datetime:
不做任何改變,基本上是原樣輸入和輸出。
首先建立兩種測試表,乙個使用timestamp格式,乙個使用datetime格式。
兩者輸出是一樣的。mysql> create table test(id int,hiredate timestamp);
query ok, 0 rows affected (0.01 sec)
mysql> insert into test values(1,'20151208000000');
query ok, 1 row affected (0.00 sec)
mysql> create table test1(id int,hiredate datetime);
query ok, 0 rows affected (0.01 sec)
mysql> insert into test1 values(1,'20151208000000');
query ok, 1 row affected (0.00 sec)
mysql> select * from test;
+------+---------------------+
| id | hiredate |
+------+---------------------+
| 1 | 2015-12-08 00:00:00 |
+------+---------------------+
1 row in set (0.01 sec)
mysql> select * from test1;
+------+---------------------+
| id | hiredate |
+------+---------------------+
| 1 | 2015-12-08 00:00:00 |
+------+---------------------+
1 row in set (0.00 sec)
其次修改當前會話的時區
上述「cst」指的是mysql所在主機的系統時間,是中國標準時間的縮寫,china standard time ut+8:00mysql> show variables like '%time_zone%';
+------------------+--------+
| variable_name | value |
+------------------+--------+
| system_time_zone | cst |
| time_zone | system |
+------------------+--------+
2 rows in set (0.00 sec)
mysql> set time_zone='+0:00';
query ok, 0 rows affected (0.00 sec)
mysql> select * from test;
+------+---------------------+
| id | hiredate |
+------+---------------------+
| 1 | 2015-12-07 16:00:00 |
+------+---------------------+
1 row in set (0.00 sec)
mysql> select * from test1;
+------+---------------------+
| id | hiredate |
+------+---------------------+
| 1 | 2015-12-08 00:00:00 |
+------+---------------------+
1 row in set (0.01 sec)
通過結果可以看出,test中返回的時間提前了8個小時,而test1中時間則不變。這充分驗證了兩者的區別。
2>兩者所能儲存的時間範圍不一樣
timestamp所能儲存的時間範圍為:'1970-01-01 00:00:01.000000' 到 '2038-01-19 03:14:07.999999'。總結:timestamp和datetime除了儲存範圍和儲存方式不一樣,沒有太大區別。datetime所能儲存的時間範圍為:'1000-01-01 00:00:00.000000' 到 '9999-12-31 23:59:59.999999'。
當然,對於跨時區的業務,timestamp更為合適。
www.shengrizhufuyu.cn
Datetime 和多維陣列
c datetime日期型別格式化顯示 1.繫結時格式化日期方法 2.資料控制項如datagrid datalist等的件格式化日期方法 e.item.cell 0 text convert.todatetime e.item.cell 0 text toshortdatestring 3.用str...
python time庫和datetime庫詳解
import time import datetime 重點是元祖 時間戳 格式化的字串之間互相轉化 元祖轉時間戳 使用time.mktime 元祖 元祖轉格式化的字串 使用time.strftime 元祖 時間戳轉元祖 思路,時間戳首先轉化為格式化的字串,再從格式化的字串轉換為元祖 time.st...
datetime比較 datetime模組的使用
datetime模組提供表示和處理日期 時間的一些類此模組的大部分功能,是關於建立和輸出日期與資訊的各種不同方式,其他的主要功能包括數 算,如時間增量的比較和計算。字元 說明 值範圍 一 匯入時間模組 import datetime 使用時需多加乙個datetime.from datetime im...