更新语句中的日期时间格式不正确

3

我正在使用MySQL数据库。我有一条更新语句,想要通过ASP.NET SQL查询来更新我的数据表。

UPDATE customer_request 
SET Issue = 'Broken_Wire', 
FixedDate = '2015-05-17 14:05:46' 
WHERE CustReqID = 102 
AND ErrorReportedDate = STR_TO_DATE('5/17/2015 11:42:26 AM','%Y-%m-%d %H:%i:%s')

我遇到了这个错误:

错误代码:1411。函数str_to_date中的日期时间值不正确:'5/17/2015 11:42:26 AM'

我的查询有什么问题?


注:该段文字是一个程序员询问关于他的查询语句出现错误的原因。
1个回答

1
您的where子句中的这部分未正确设置日期格式。
  STR_TO_DATE('5/17/2015 11:42:26 AM','%Y-%m-%d %H:%i:%s')

相反,你可能想要 < /p >。
  STR_TO_DATE('5/17/2015 11:42:26 AM','%c/%e/%Y %H:%i:%s')

where

 %e  = Day of the month without leading zero e.g., 1,2,…31 
 %c  = Month in numeric e.g., 1, 2, 3…12
 %Y  = Four digits year e.g., 2000, 2001
 %H  = Hour with 24-hour format with leading zero e.g., 00..23
 %i  = Minutes with leading zero e.g., 00, 01,…59
 %S or %s = Seconds with leading zero 00,01,…59

您可以在此处阅读关于日期格式说明符的内容


尝试使用该格式,但仍然出现相同的错误。 - user1651888
删除了AM/PM规范,将%c中的%m更改,并在MySql Workbench中尝试。看起来它可以工作。 - Steve

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接