在mysql中插入记录时,如何将“ 1993年3月10日”转换为日期?

时间:2018-11-21 22:44:18

标签: mysql mysql-workbench

我写了以下查询:

插入程序 (programId,programName,startDate,annualGoal) 价值 (135,'Community Evergreening',STR_TO_DATE('10 -Mar-2013','dd-mmm-yyyy'),25000);

但是,它显示“错误代码:1411。日期时间值不正确:函数str_to_date的日期为'10 -Mar-2013'”。

我无法理解我在这里做错了什么。

2 个答案:

答案 0 :(得分:2)

您需要这样表示日期格式:%d-%b-$Y

STR_TO_DATE('10-Mar-2013', '%d-%b-%Y')

问题是您使用的格式为dd-mmm-yyyy。但是,MySQL的日期格式不使用该格式。

如果您查看str_to_date的文档,它表示它是date_format的反函数,您可以查看documentation for date_format来获取可用于表示的字符表日期格式。

  

有关可以使用格式的说明符,请参见DATE_FORMAT()函数说明。

答案 1 :(得分:0)

尝试STR_TO_DATE('10-Mar-2013', '%d %b %Y')

来自here