Почему я получаю код ошибки: 1292 в определенном диапазоне? - PullRequest
0 голосов
/ 04 октября 2019

Я получаю Error Code: 1292 при попытке присвоить значения в диапазоне от '2016-03-27 02:00:00' до '2016-03-27 2:59:59'. Я использую TIMESTAMP в качестве типа переменной и MySQL Workbench. Все другие даты (и часы), кажется, работают правильно. Я не понимаю, почему это происходит ... Это какая-то ошибка в этой среде или SQL или я что-то упустил? Спрашиваю просто из любопытства:)

Определение таблицы:

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);

1 Ответ

0 голосов
/ 04 октября 2019

Именно тогда мы перешли со стандартного времени на летнее время в 2016 году. Время подскочило с 01:59:59 до 03:00:00. Так что любое время между ними не существует.

...