码迷,mamicode.com
首页 > 数据库 > 详细

MySQL TIMESTAMP(时间戳)详细解释

时间:2015-06-12 11:20:54      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:

当你创建一个表假设表中有类型的字段TIMESTAMP,该字段默认情况下,语句生成:

CREATE TABLE `test` (
  `id` int(11) DEFAULT NULL,
  `ctime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=gbk

假设有两个字段类型为TIMESTAMP,则生成语句为:

CREATE TABLE `test` (
  `id` INT(11) DEFAULT NULL,
  `ctime` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `utime` TIMESTAMP NOT NULL DEFAULT ‘0000-00-00 00:00:00‘
) ENGINE=INNODB DEFAULT CHARSET=gbk
TIMESTAMP设置默认值是Default CURRENT_TIMESTAMP、

TIMESTAMP设置随着表变化而自己主动更新是ON UPDATE CURRENT_TIMESTAMP

一个表中至多仅仅能有一个字段设置CURRENT_TIMESTAMP(当前时间)

1、TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 

在创建新记录和改动现有记录的时候都对这个数据列刷新
 
2、TIMESTAMP DEFAULT CURRENT_TIMESTAMP 

在创建新记录的时候把这个字段设置为当前时间,但以后改动时,不再刷新它

3、TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 

在创建新记录的时候把这个字段设置为0,以后改动时刷新它


作者:itmyhome

来源:http://blog.csdn.net/itmyhome1990/article/details/39342245


MySQL TIMESTAMP(时间戳)详细解释

标签:

原文地址:http://www.cnblogs.com/gcczhongduan/p/4571064.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!