国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

Mysql中的Datetime和Timestamp比較

2024-07-24 12:46:22
字體:
來源:轉載
供稿:網友

mysql中用于表示時間的三種類型date, datetime, timestamp (如果算上int的話,四種) 比較容易混淆,下面就比較一下這三種類型的異同

相同點

都可以用于表示時間
都呈字符串顯示

不同點

1.顧名思義,date只表示'YYYY-MM-DD'形式的日期,datetime表示'YYYY-MM-DD HH:mm:ss'形式的日期加時間,timestamp與datetime顯示形式一樣。
2.date和datetime可表示的時間范圍為'1000-01-01'到'9999-12-31',timestamp由于受32位int型的限制,能表示'1970-01-01 00:00:01'到'2038-01-19 03:14:07'的UTC時間。
3.mysql在存儲timestamp類型時會將時間轉為UTC時間,然后讀取的時候再恢復成當前時區。 假如你存儲了一個timestamp類型的值之后,修改了mysql的時區,當你再讀取這個值時就會得到一個錯誤的時間。而這種情況在date和datetime中不會發生。
4.timestamp類型提供了自動更新的功能,你只需要將它的默認值設置為CURRENT_TIMESTAMP。
5.除了date是保留到天,datetime和timestamp都保留到秒,而忽略毫秒。

時間格式

mysql提供了一種比較寬松的時間字符串格式用于增刪改查。參考iso時間格式,一般習慣于寫成'2013-06-05 16:34:18'。但是你也可以簡寫成'13-6-5',但是這樣容易造成混淆,比如mysql也會把'13:6:5'也當做年月日處理,而當'13:16:5'這種形式,則被mysql認為是不正確的格式,會給出一個警告,然后存入數據庫的值是'0000-00-00 00:00:00'。

手冊中還特意提到了一種情況,就是當年的值是0~69時,mysql認為是2000~2069,而70~99時則認為是1970~1999。我感覺是一種畫蛇添足了。

總之,以不變應萬變,使用'YYYY-MM-DD HH:mm:ss'格式總是不會錯的。

您可能感興趣的文章:

MySQL日期數據類型、時間類型使用總結mysql datetime查詢異常問題解決mysql取得datetime類型的數據,后面會跟個.0的實現方法
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 扶余县| 枣阳市| 绥棱县| 略阳县| 崇州市| 连云港市| 农安县| 永新县| 闽清县| 桓台县| 江油市| 乌兰察布市| 黄浦区| 津市市| 广平县| 石首市| 杭锦旗| 旺苍县| 富锦市| 敦化市| 丹凤县| 平昌县| 裕民县| 曲水县| 福海县| 渑池县| 静海县| 新河县| 虎林市| 西城区| 西宁市| 安义县| 信丰县| 沐川县| 临澧县| 阿勒泰市| 南康市| 那坡县| 梓潼县| 科技| 诸暨市|