Spec-Zone .ru
спецификации, руководства, описания, API
|
MySQL получает и выводит на экран TIME
значения в 'HH:MM:SS'
формат (или 'HHH:MM:SS'
формат для больших
значений часов). TIME
значения могут расположиться от '-838:59:59'
к '838:59:59'
. Часть часов может быть настолько большой потому что TIME
тип может использоваться не только, чтобы представить время суток (который
должен составить меньше чем 24 часа), но также и прошедшее время, или временной интервал между двумя событиями
(который может быть намного больше чем 24 часа, или даже отрицательным).
MySQL распознает TIME
значения в нескольких форматах, некоторые из которых могут
включать запаздывающую часть долей секунды в до микросекунд (6 цифр) точность. См. Раздел
9.1.3, "Дата и Литералы Времени". Для получения информации о поддержке долей секунды в MySQL
см. Раздел
11.3.6, "Доли секунды во Временных стоимостях". В частности с MySQL 5.6.4 любая дробная часть
в значении вставляется в a TIME
столбец сохранен, а не отбрасывается. С включенной
дробной частью, диапазон для TIME
значения '-838:59:59.000000'
к '838:59:59.000000'
.
Будьте осторожны относительно присвоения сокращенных значений к a TIME
столбец.
MySQL интерпретирует сокращенный TIME
значения с двоеточиями как время дня. Таким
образом, '11:12'
средства '11:12:00'
, нет '00:11:12'
. MySQL интерпретирует сокращенные значения без двоеточий, используя
предположение, что две самых правых цифры представляют секунды (то есть, как прошедшее время, а не как время
суток). Например, Вы могли бы думать '1112'
и 1112
как
значение '11:12:00'
(12 минут после 11 часов), но MySQL интерпретирует их как '00:11:12'
(11 минут, 12 секунд). Точно так же '12'
и 12
интерпретируются как '00:00:12'
.
По умолчанию, значения, которые лежат вне TIME
расположитесь, но иначе допустимы,
отсекаются к самой близкой конечной точке диапазона. Например, '-850:00:00'
и '850:00:00'
преобразовываются в '-838:59:59'
и '838:59:59'
. Недопустимый TIME
значения
преобразовываются в '00:00:00'
. Отметьте это потому что '00:00:00'
самостоятельно допустимое TIME
значение, нет никакого способа сказать от значения
'00:00:00'
сохраненный в таблице, было ли исходное значение определено как '00:00:00'
или ли это было недопустимо.
Для более рестриктивной обработки недопустимых TIME
значения, позвольте строгому
режиму SQL вызвать ошибки произойти. См. Раздел 5.1.7, "Режимы SQL
Сервера".