Попытка обновить дату в таблице mySql с помощью datagrip IDE
Я пытаюсь обновить дату в определенной таблице в MySQL в IDE DataGrip, и я продолжаю получать одно и то же сообщение об ошибке при выполнении запроса:
[2017-10-20 12:39:28] [HY000] [1411] Неправильное значение даты и времени: "2016-04-16 10:00:00 AM" для функции str_to_date
UPDATE DetailRental
SET DETAIL_RETURNDATE = STR_TO_DATE('2016-04-16 10:00:00 AM', '%d/%m/%Y %h:%i %p')
WHERE RENT_NUM = 1001 AND VID_NUM = 34342;
Выше мой запрос, и я искал во всем Интернете, как отформатировать это, и, насколько мне известно, это было наиболее последовательным, но я продолжаю получать одно и то же сообщение об ошибке, и моя таблица не будет обновляться.
Если кто-то может помочь и увидеть, что я делаю неправильно, было бы здорово. Благодарю.
1 ответ
Ваша строка содержит данные в YYYY-MM-DD HH:MM:SS AM
формат, но вы просите разобрать дату в DD/MM/YYYY HH:MM AM
формат. Ваша строка анализа должна соответствовать формату вашей строки.
mysql> select STR_TO_DATE('2016-04-16 10:00:00 AM', '%d/%m/%Y %h:%i %p');
+------------------------------------------------------------+
| STR_TO_DATE('2016-04-16 10:00:00 AM', '%d/%m/%Y %h:%i %p') |
+------------------------------------------------------------+
| NULL |
+------------------------------------------------------------+
mysql> select STR_TO_DATE('2016-04-16 10:00:00 AM', '%Y-%m-%d %h:%i:%s %p');
+---------------------------------------------------------------+
| STR_TO_DATE('2016-04-16 10:00:00 AM', '%Y-%m-%d %h:%i:%s %p') |
+---------------------------------------------------------------+
| 2016-04-16 10:00:00 |
+---------------------------------------------------------------+