Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
06.07.2018, 09:32
|
|||
|---|---|---|---|
Подавить ошибку: [22001][1292] Data truncation: Incorrect datetime value: |
|||
|
#18+
Собственно сабж - "КАК"? Задача, вырезать из текстового поля 2 даты по предваряющему ключу и сохранить как отдельные поля к этой же записи. Формат дат "какой попало", типа dd/mm/yyyy, dd-mm-yyyy, то есть разделителем может быть несколько символов, и даты могут быть даже такие dd/m/yy. В общем сделал упрощенный вариант, который часть дат не находит и в запросе Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Не распознанные даты вполне нормально выходят как NULL Однако, как только преобразую запрос в UPDATE получаю эту ошибку. Как подавить неправильную текстовку дат и заменить на NULL значения? (давно не возился с парсингом текстов на скуле) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.07.2018, 09:39
|
|||
|---|---|---|---|
Подавить ошибку: [22001][1292] Data truncation: Incorrect datetime value: |
|||
|
#18+
Так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Несмотря на то, что отдельно взятый SELECT отрабатывает без сообщений об ошибке, заменяя кривые даты на NULL .. Можно ли что-то сделать или только "ручками" (на клиенте)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.07.2018, 11:26
|
|||
|---|---|---|---|
Подавить ошибку: [22001][1292] Data truncation: Incorrect datetime value: |
|||
|
#18+
Покажите описания этих полей в DDL таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.07.2018, 12:08
|
|||
|---|---|---|---|
Подавить ошибку: [22001][1292] Data truncation: Incorrect datetime value: |
|||
|
#18+
Akina, В таблице много полей, но работа ведется над одним полем: paymentInfo оно типа text. Добавление дат происходит в поля, добавленные в таблицу так: Код: sql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.07.2018, 12:11
|
|||
|---|---|---|---|
Подавить ошибку: [22001][1292] Data truncation: Incorrect datetime value: |
|||
|
#18+
P.S. В общем вопрос решил на клиенте, но осталось непонятным как подавлять такую ошибку .. интересно на будущее. Самое забавное, что отдельно взятый SELECT (подзапрос) никаких ошибок не выдает, а честно отдает NULL там где не смог преобразовать в дату или там где оказалось @pos = 0. Вставка такой проверки в запрос устраняет часть ошибок, но только часть.. кривые форматы дат все равно выдают эту ошибку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.07.2018, 12:22
|
|||
|---|---|---|---|
Подавить ошибку: [22001][1292] Data truncation: Incorrect datetime value: |
|||
|
#18+
Arhat109осталось непонятным как подавлять такую ошибкуЕсли учесть, что сообщения об ошибках специально придуманы именно для того, чтобы о них стало известно и на них можно было реагировать, то становится понятно, что надо не подавлять ошибку, а исправлять код так, чтобы она не возникала. Самое простое в данном случае решение - после преобразования проверить полученное значение на соответствие шаблону даты (RLIKE подойдёт), и в зависимости от хотелок либо обновлять только теми записями, которые прошли эту проверку, либо не прошедшие проверку значения явно заменять на NULL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.07.2018, 12:24
|
|||
|---|---|---|---|
Подавить ошибку: [22001][1292] Data truncation: Incorrect datetime value: |
|||
|
#18+
Akina, Спасибо, в общем-то это тоже один из способов "подавления" .., что и было интересно. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.07.2018, 12:25
|
|||
|---|---|---|---|
Подавить ошибку: [22001][1292] Data truncation: Incorrect datetime value: |
|||
|
#18+
Ну то есть Код: sql 1. или тупо Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&tablet=1&tid=1829744]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
| others: | 10ms |
| total: | 137ms |

| 0 / 0 |
