首页 >数据库 >mysql教程 >MySQL中DATETIME和TIMESTAMP的区别_MySQL

MySQL中DATETIME和TIMESTAMP的区别_MySQL

WBOY
WBOY原创
2016-06-01 13:12:011043浏览

先复制一份文档给大家看:

日期时间
日期和时间的组合。支持的范围是“1000-01-01 00:00:00”到“9999-12-31 23:59:59”。
MySQL 以“YYYY-MM-DD HH:MM:SS”格式显示 DATETIME 值格式,但允许您使用字符串或数字向 DATETIME 列分配值。
时间戳
时间戳。范围是“1970-01-01 00:00:00”到 2037 年中。
TIMESTAMP 列可用于记录 INSERT 或 UPDATE 操作的日期和时间。 
如果您没有自己分配值,表中的第一个 TIMESTAMP 列会自动设置为最近操作的日期和时间。 
您还可以通过为任何 TIMESTAMP 列分配 NULL 值来将其设置为当前日期和时间。

现在开始具体比较:

DATETIME,字节数为8 ,取值范围为“1000-01-01 00:00:00——9999-12-31 23:59:59”

                回复Java类型为java.sql.Timestamp

INSERT或UPDATE操作时系统不会自动修改其值,可以不设置默认值,为必须字段时必须手动插入,建议使用:new()

               MySqlYYYY-MM-DD HH:MM :SS对数据进行格式化,允许以字符串和数字的方式提交

                  例如:insert into time_table(CreateDate)values('2014-06-09 15:01:01')

                   或insert into time_table(CreateDate)values('20140609150101')

TIMESTAMP,字节数为4,取值范围为“19700101080001——20380119111407 ”

               Java类型为java.sql.Timestamp

               INSERT或UPDATE操作时(且未手动赋值)系统会自动更新、插入当前系统时间,默认为CURRENT_TIMESTAMP()

                  要              提交手动属性为NULL时同时属性为系统时间,错误时会被填入0

               使用TIMESTAMP一定注意他当前的时间范围(见上) )。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn