java - MySql STR_TO_DATE 在存储过程中不起作用

标签 java mysql database str-to-date

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

我的查询是:

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

有什么想法吗?

最佳答案

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

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

关于java - MySql STR_TO_DATE 在存储过程中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46778607/

相关文章:

java - 为什么 fileWriter 在 bufferedWriter 和 printWriter 之前写入输出文件?

mysql - 如何在 Apache Tomcat 6 中使用 mySQL

mysql - MySQL中,备份数据库有哪些做法?

java - Kryo 字节级追加

java - ContentValues Insert 始终返回 -1

java - 使用java安装mysql

mysql - 需要帮助来构建查询

database - 在 Laravel 中按多列分组

java - JPA @EntityListeners、@PrePersist 和 Spring @RepositoryEventHandler、@HandleBeforeSave 之间的区别

PhpMyAdmin 导入错误-MySQL 服务器已经消失/无法识别的关键字