LINUX.ORG.RU

Mysql (MariaDB) вместо даты пишет нули

 , , ,


0

1

Доброе... Есть таблица, в которой есть поля с датой в формате DATETIME.

Происходили обработки и вносились изменения даты...все работало нормально, вот пример запроса

echo "UPDATE all_users SET last_connect='$last_date' WHERE name='$uname';" | mysql -uUSER -pPASSWORD user_bd

Вносилось нормально, а сегодня неожиданно заметил, что дата не вносится, точнее только 00-00-00 00:00:00.

И так по всем скриптам, ничего не перегружал.

Даты всегда получал таким образом (написано на bash'e)

last_dt=`awk '{print $2, $3, $5, $4}' uname_status | sed -n ''НОМЕР СТРОКИ' p'`
last_date=`date -d "$dt_new" +%Y.%d.%m-%H:%M:%S`

и дальше запрос как выше

Подобная конструкция в нескольких скриптах хорошо и без проблем работала, как сегодня ночью перестала принимать даты.

Сначала подумал что формат не подходит... поменял, она два раза внесла, но потом все - только нули ...

Что это может быть?

Спасибо.

Ответ на: комментарий от anonymous

2014-11-13 11:25:07 - дата, руками прописанная в скрипте нормально вносится...

Видимо, все таки, не принимает обратку моих переменных

Сейчас NO_ZERO попробую, только пойму сначала)

Спасибо

firefedot
() автор топика

Прологируйте строки сформированных запросов сначала.

Sorcerer ★★★★★
()
Ответ на: комментарий от anonymous

Спасибо огромное. что кину на страничку с датами... Посмотрел и увидел ошибку.

У меня было записано так

last_date=`date -d "$dt_new" +%Y.%d.%m-%H:%M:%S`

То есть ГодДеньМесяц и все это работало, пока день не стал больше 12, ведь в mysql ГодМесяцДень и если одно число месяца больше 12, то он все скидывает, и работало до полуночи. потому что было вчера 12 число, а сегодня 13.

Все поправил, спасибо огромное

firefedot
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.