【问题标题】:Why do I get Error Code: 1292 in a specific range?为什么我会在特定范围内收到错误代码:1292?
【发布时间】:2019-10-03 21:34:01
【问题描述】:

在尝试将值从'2016-03-27 02:00:00' 分配到'2016-03-27 2:59:59' 时,我得到了这个Error Code: 1292。我使用TIMESTAMP 作为变量类型和 MySQL Workbench。所有其他日期(和时间)似乎都可以正常工作。我不明白为什么会发生这种情况......是这种环境或SQL中的某种BUG还是我错过了什么?只是出于好奇而询问:)

表定义:

CREATE TABLE sales_order(
cust_id INT UNSIGNED NOT NULL,
sales_person_id INT UNSIGNED NOT NULL,
FOREIGN KEY(cust_id)
    REFERENCES customer(id),
FOREIGN KEY(sales_person_id)
    REFERENCES sales_person(id),
time_order_taken TIMESTAMP NOT NULL,
purchase_order_number BIGINT NOT NULL,
credit_card_number VARCHAR(16) NOT NULL,
credit_card_expir_month TINYINT NOT NULL,
credit_card_expir_year TINYINT NOT NULL,
credit_card_secret_code SMALLINT NOT NULL,
name_on_card VARCHAR(60) NOT NULL,
id INT UNSIGNED NOT NULL
AUTO_INCREMENT PRIMARY KEY);

查询:

INSERT INTO sales_order VALUES 
(15, 4, '2016-03-27 02:18:18', 2016327218, 7798214190926405, 5, 13, 809, 'Stephanie Taylor', NULL);

【问题讨论】:

  • 我们能看到查询和表定义吗?
  • 当然,我已经编辑了帖子

标签: mysql timestamp workbench


【解决方案1】:

那是我们在 2016 年从标准时间更改为夏令时的时候。时间从 01:59:59 跃升至 03:00:00。所以它们之间的任何时间都不存在。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-05
    • 2021-10-27
    • 1970-01-01
    • 2013-03-05
    • 1970-01-01
    • 2011-09-11
    • 2020-10-11
    相关资源
    最近更新 更多