1. 程式人生 > >mysql 時間欄位儲存毫秒

mysql 時間欄位儲存毫秒

一. 注意點

0. 資料庫版本的選定     5.6.4以上 1.  資料庫jdbc驅動版本的選定     5.6.4以上版本資料庫對應的jdbc驅動, 如果驅動版本過低, 會把毫秒給截斷, 出現靈異事件(明明程式中指定了毫秒, 但插入到資料庫時反而沒有毫秒了) 2.  資料庫欄位的選取  DateTime(3/6)或者Timestamp(3/6) 3.  jdbcType的選取      TIMESTAMP 4.  javaType的選取 Java.util.Date

二. mysql中DateTime和Timestamp

DateTime   a. 8個位元組儲存(8 bytes storage)
  b. 實際格式儲存(Just stores what you have stored and retrieves the same thing which you have stored.)   c. 與時區無關(It has nothing to deal with the TIMEZONE and Conversion.)         d. 儲存的時間範圍為:'1000-01-01 00:00:00.000000' 到 '9999-12-31 23:59:59.999999' Timestamp   a. 4個位元組儲存(Time stamp value is stored in 4 bytes)   b. 值以UTC格式儲存( it stores the number of milliseconds)
  c. 時區轉化 ,儲存時對當前的時區進行轉換,檢索時再轉換回當前的時區。         d. 儲存的時間範圍為:'1970-01-01 00:00:01.000000' 到 '2038-01-19 03:14:07.999999' 例項對比   a. 先插入一個數據insert into `t8` values(now(), now());   b. 改變客戶端時區(東9區,日本時區)。   c. 再次顯示插入的資料,變化了,timestamp型別的資料 增加了 1個小時