mysql中DATETIME,DATE和TIMESTAMP的区别

2024年11月30日 02:39
有2个网友回答
网友(1):

DATE只保存日期,不保存时分秒

DATETIME类型支持的范围是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。
4个字节储存
值以UTC格式保存
时区转化 ,存储时对当前的时区进行转换,检索时再转换回当前的时区。

TIMESTAMP类型支持的范围是'1970-01-01 00:00:00'到'2037-12-31 23:59:59'。
8个字节储存
实际格式储存
与时区无关
TIMESTAMP可以设默认值CURRENT_TIMESTAMP ,DATETIME不行

网友(2):

  1. DATETIME 类型可用于需要同时包含日期和时间信息的值。MySQL 以 'YYYY-MM-DD HH:MM:SS' 格式检索与显示 DATETIME 类型。支持的范围是 '1000-01-01 00:00:00' 到 '9999-12-31 23:59:59'。(“支持”的含义是,尽管更早的值可能工作,但不能保证他们均可以。)

  2. DATE 类型可用于需要一个日期值而不需要时间部分时。MySQL 以 'YYYY-MM-DD' 格式检索与显示 DATE 值。支持的范围是 '1000-01-01' 到 '9999-12-31'。

  3. TIMESTAMP 列类型提供了一种类型,通过它你可以以当前操作的日期和时间自动地标记 Insert 或Update 操作。如果一张表中有多个 TIMESTAMP 列,只有第一个被自动更新。