MySQL中TIMESTAMP类型的使用说明

来源:互联网 发布:充话费软件哪个好 编辑:程序博客网 时间:2024/05/01 20:24

今天使用了一下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

 

 

好了。关于导入数据的技巧,请参见上次我写的文章:完整导入数据表时忽略主键的方法

http://blog.csdn.net/ciray/archive/2010/08/21/5828988.aspx

 

原创粉丝点击