MySQL中TIMESTAMP型別的使用說明

2021-09-30 04:59:02 字數 1080 閱讀 6348

今天使用了一下mysql中的timestamp型別,以往儲存時間都是使用整型的unix時間戳,而今天的表結構發生了變化,下面分享一下timestamp型別的基本使用方法。

字段:updatetime

型別:timestamp

長度:空

預設:current_timestamp

屬性:on update current_timestamp

插入和更新時,不必填寫該欄位,因為屬性為on update current_timestamp,mysql將在插入/更新時自動用當前時間進行填充,

資料格式如下:

2010-08-23 15:14:30

下面又要討論如何匯入資料了,將int(11)型別轉換成timestamp型別,使用下面的sql語句即可:

insert into target

(`name`,`updatetime`) select `name`,date_add('1970-01-01 00:00:00', interval `timeline` second) from a ;

上面這行sql語句的作用是將源表a中的資料匯入到target表,

注意了,int轉timestamp型別使用了這個函式:

date_add('1970-01-01 00:00:00', interval `timeline` second)

我們來看一下函式定義:

date_add(date,interval expr type) 函式向日期新增指定的時間間隔。

date

引數是合法的日期表示式。expr

引數是您希望新增的時間間隔。

本例中我們從unix紀元'1970-01-01 00:00:00'開始,計算到`timeline`為止的時間間隔(用秒second為單位)。

`timeline`是源表a中的原始字段,int型別,表示寫入記錄的時間。

`updatetime`是目標表target中對應的時間字段,timestamp型別。

匯入後的資料格式如下:

2010-06-30 09:07:12

好了。關於匯入資料的技巧,請參見上次我寫的文章:完整匯入資料表時忽略主鍵的方法

mysql中timestamp的使用

mysql中timestamp的使用 mysql create table t1 id mediumint 9 not null auto increment,name char 11 default null,rq timestamp default current timestamp on up...

MYSQL中TIMESTAMP型別的預設值

mysql中timestamp型別的預設值 mysql中timestamp型別可以設定預設值,就像其他型別一樣。表 table create table t1 create table t1 p c int 11 not null,p time timestamp not null default ...

mysql表中時間timestamp設計

如圖所示,mysql資料庫中,當欄位型別為timestamp時,如果預設值取current timestamp,則在insert一條記錄時,end time的值自動設定為系統當前時間,如果勾選了 on update current timestamp 則時間欄位會隨著update命令進行實時更新,即...