2015-05-17 5 views
3

Я использую базу данных MySQL. У меня есть инструкция по обновлению, и я пытаюсь обновить таблицу данных из SQL-запроса ASP.NET.Неправильный формат даты даты в операторе обновления

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') 

Я получаю эту ошибку:

Error Code: 1411. Incorrect datetime value: '5/17/2015 11:42:26 AM' for function str_to_date

Что неправильно в моем запросе?

ответ

1

Эта часть вашего, где положение не правильно установить формат даты

STR_TO_DATE('5/17/2015 11:42:26 AM','%Y-%m-%d %H:%i:%s') 

вместо этого вы, вероятно, хотите

STR_TO_DATE('5/17/2015 11:42:26 AM','%c/%e/%Y %H:%i:%s') 

где

%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 

Вы можете прочитать о DATE_FORMAT specifiers here

+0

пробовал использовать формат, но все же дает ту же ошибку – user1651888

+0

Убрал спецификации AM/PM, изменил% m в% c и попытался в MySql Workbench. Кажется, что это работает – Steve