У меня есть MySQL database, с столбцом, который является типом даты DATETIME.
Я получаю строковое значение для даты/времени из внешнего приложения. Это строковое значение выглядит следующим образом:
'5/15/2012 8:06:26 AM'
MySQL выдает ошибку в INSERT: "Error. Incorrect datetime value". Моим обходным решением было изменить тип столбца на VARCHAR, который работает, но мне действительно нужны данные как правильная дата и время для будущего использования.
Я изучил принятое форматирование для значений MySQL DATETIME и обнаружил, что MySQL хочет формат DATETIME как 'YYYY-MM-DD HH:MM:SS'.
Я не могу изменить внешнее приложение, чтобы переформатировать строку даты/времени в формате, поэтому мой единственный шанс - с этим справиться.
Мне нужно, по-моему, проанализировать существующую строку, используя MySQL syntax внутри моего оператора INSERT, но я не уверен, как это сделать. У меня есть идея, что мне нужно использовать предложение SELECT, возможно, STR_TO_DATE, как-то в сочетании с моей инструкцией INSERT.
Вот мой текущий оператор INSERT. Я удалил другие поля, которые не вызывают проблемы, просто чтобы сделать пример чистым.
INSERT INTO tblInquiry (fldInquiryReceivedDateTime) VALUES ('5/15/2012 8:06:26')
Спасибо за любую помощь, я новичок SQL.