дата и время не спасают секунды

Поэтому я читаю здесь: Почему MySQL не поддерживает точность в миллисекундах / микросекундах? что начиная с версии 5.6.4, формат datetime должен занимать до миллисекунд.

Но это не работает для меня даже на десятые секунды, это не займет. Когда я выполняю свой запрос «INSERT», сохраненное значение выглядит так: «2014-09-15 15:05:54».

Значение, которое я хотел вставить, выглядит следующим образом: «2014-09-15T15: 05: 54.0» Поэтому, когда я делаю сравнение, я получаю ошибки: /

Вот мой INSERT Query:

            $bdd->query('INSERT INTO ev
(id_event, ts, sp, lg, dir)
VALUES
(NULL,"'.$evTs.'","'.$ev_sp.'","'.$ev_lg.'","'.$ev_dir.'")');

Где $ evTs — это отметка времени.

Обновление 1

Как я создаю свою таблицу ev:

'CREATE TABLE `ev` (
`id_event` int(32) NOT NULL AUTO_INCREMENT,
`ts` datetime NOT NULL,
`sp` int(32) NOT NULL,
`lg` int(32) NOT NULL,
`dir` int(32) NOT NULL,
`nbr_voie` int(32) NOT NULL,
PRIMARY KEY (`id_event`)

)

0

Решение

Это потому что T не является частью действительной временной строки mysql. MySQL формат даты / времени всегда был

yyyy-mm-dd hh:mm:ss

и теперь, когда поддерживаются доли секунды

yyyy-mm-dd hh:mm:ss.sssss

Нигде в этом формате нет НИКАКОЙ поддержки T, Вам придется использовать STR_TO_DATE() проанализировать ваш «нестандартный» формат во что-то, что MySQL примет. Или даже просто использовать замену строки и сделать REPLACE('yourstring', 'T', ' ')

2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector