0

我想使用 Servlet 将日期从我的 JSP 添加到 mysql 数据库,如果我写一个查询,那么 STR_TO_DATE 可以正常插入,但是如果我在存储过程中使用 STR_TO_DATE 它会给我“com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect日期值:“11-10-2015”,第 1 行的“DATE”列”。

我的查询是:

INSERT INTO TABLENAME (DATE) VALUES (STR_TO_DATE('01/01/2010','%d-%m-%Y'));" 

任何想法?

4

2 回答 2

2

函数 STR_TO_DATE 中的第二个参数使用了错误的格式。您需要使用%d/%m/%Y而不是,%d-%m-%Y因为您的日期是用 / 分隔符格式化的。

INSERT INTO TABLENAME (DATE) VALUES (STR_TO_DATE('01/01/2010','%d/%m/%Y')); 
于 2017-10-16T20:41:34.693 回答
0

STR_TO_DATE要求字符串的格式匹配:

INSERT INTO TABLENAME (DATE) VALUES (STR_TO_DATE('01/01/2010','%d/%m/%Y'));

有关完整详细信息,请参阅文档

于 2017-10-16T20:38:39.807 回答