mysql中datetime,timestamp的区别

来源:互联网 发布:手机淘宝宝贝链接 编辑:程序博客网 时间:2024/05/18 03:59

相同点:TIMESTAMP列的显示格式与DATETIME列相同。换句话说,显示宽度固定在19字符,并且格式为YYYY-MM-DD HH:MM:SS。

不同点: datetime 以'YYYY-MM-DD HH:MM:SS'格式检索和显示DATETIME值。支持的范围为'1000-01-01 00:00:00'到'9999-12-31 23:59:59'TIMESTAMP值不能早于1970或晚于2037。

timestamp 以4个字节储存,值以UTC格式保存,受时区影响,存储时对当前的时区进行转换,检索时再转换回当前的时区。

datetime 8个字节储存,以实际格式保存,与时区无关。

CREATE TABLE `test_timestamp` (       `ww` VARCHAR( 9 ) NOT NULL,         #c1 TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,         #c2 TIMESTAMP DEFAULT CURRENT_TIMESTAMP,         #c3 TIMESTAMP DEFAULT 0 ON UPDATE CURRENT_TIMESTAMP,         c4 TIMESTAMP DEFAULT 0        ) ENGINE = INNODB
分别对c1,c2,c3,c4列进行insert和update操作(因为不能同时创建两列timestamp),c1会在insert和update时都更新当前时间,如图

insertupdatec1更新更新c2更新不更新c3不更新,默认为0000-00-00更新c4不更新,默认为0000-00-00不更新

0 0
原创粉丝点击