Eva*_*HZY 1 mysql sql timestamp mysql-error-1064 sql-insert
我有一个这样的表:
CREATE TABLE event (
id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(80) NOT NULL,
start_datetime TIMESTAMP NOT NULL DEFAULT '1970-01-01 00:00:01',
end_datetime TIMESTAMP NOT NULL DEFAULT '1970-01-01 00:00:01',
description TEXT,
created TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
modified TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3)
);
Run Code Online (Sandbox Code Playgroud)
插入这条新记录时没有错误:
insert into event (name, start_datetime, end_datetime)
value
('myName', '2020-01-05 18:00:00', '2020-01-07 23:59:00')
;
Run Code Online (Sandbox Code Playgroud)
但这条记录抛出错误:
insert into event (name, start_datetime, end_datetime)
value
('myName', '2045-01-05 18:00:00', '2045-01-07 23:59:00')
;
Run Code Online (Sandbox Code Playgroud)
错误是
Data truncation: Incorrect datetime value: '2045-01-05 18:00:00' for column 'start_datetime' at row 1
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?非常感谢!
更新:在 MySql 文档中发现:TIMESTAMP 数据类型用于包含日期和时间部分的值。TIMESTAMP 的范围为“1970-01-01 00:00:01”UTC 到“2038-01-19 03:14:07”UTC。
所以我猜2045年太遥远了……
| 归档时间: |
|
| 查看次数: |
7568 次 |
| 最近记录: |