MySQL错误1292日期值不正确?

时间:2017-02-12 23:09:51

标签: mysql

CREATE TABLE orders(
    order_id INTEGER PRIMARY KEY, 
    customer_id INTEGER, 
    order_date DATE, 
    ship_date DATE
);

INSERT INTO orders
VALUES
(1, 1200, '2013-23-10', '2013-28-10');

以上代码有什么问题吗?

2 个答案:

答案 0 :(得分:1)

您正在使用' YYYY-dd-MM'格式,而您需要使用' YYYY-MM-dd',请尝试以下操作:

INSERT INTO orders VALUES (1, 1200, '2013-10-23', '2013-10-28');

答案 1 :(得分:0)

日期格式为'YYYY-MM-DD'

2328不是MM个月组件的有效值。

MySQL返回的错误是预期的行为。

如果您希望MySQL返回错误消息,那么您正在做什么都没有错。

如果您希望语句执行成功,并向orders表添加行,请为DATE列提供有效的日期值。

更改文字值以匹配MySQL预期的格式,或使用STR_TO_DATE函数转换指定格式的字符串。

... , '2013-10-23' , ... 

... , STR_TO_DATE('2013-23-10','%Y-%d-%m') , ...