MySQL中TIMESTAMP类型的使用说明

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

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值