Типы данных даты и времени

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

Типы данных DATETIME, DATE, TIME

Тип данных DATETIME используется для величин, содержащих информацию как о дате, так и о времени в формате 'YYYY-MM-DD HH:MM:SS'

Тип данных DATE используется для величин с информацией только о дате в формате 'YYYY-MM-DD'. Поддерживается диапазон величин от '1000-01-01' до '9999-12-31'.

Тип данных TIME используется для хранения значений времени в формате HH.MM.SS[.ssss]

Тип данных YEAR

MySQL Server поддерживает однобайтный тип данных YEAR, предназначенный для представления значений года в формате YYYY. Диапазон возможных значений - от 1901 до 2155.

Величины типа YEAR могут быть заданы в различных форматах:

  • Как четырехзначная строка в интервале значений от '1901' до '2155'.
  • Как четырехзначное число в интервале значений от 1901 до 2155.
  • Как двухзначная строка в интервале значений от '00' до '99'. Величины в интервалах от '00' до '69' и от '70' до '99' при этом преобразуются в величины YEAR в интервалах от 2000 до 2069 и от 1970 до 1999 соответственно.
  • Как двухзначное число в интервале значений от 1 до 99. Величины в интервалах от 1 до 69 и от 70 до 99 при этом преобразуются в величины YEAR в интервалах от 2001 до 2069 и от 1970 до 1999 соответственно. Необходимо принять во внимание, что интервалы для двухзначных чисел и двухзначных строк несколько различаются, так как нельзя указать ``ноль'' непосредственно как число и интерпретировать его как 2000. Необходимо задать его как строку '0' или '00', или же оно будет интерпретировано как 0000.

Недопустимые величины YEAR преобразуются в 0000.

Тип данных TIMESTAMP

Назначение типа данных timestamp в MS SQL Server и MySQL Server значительно отличается.

В языке Transcat SQL, используемом в MS SQL Server тип данных, TIMESTAMP представляет собой автоматически сформированные уникальные двоичные числа. При произведении любых изменений в строке значение TIMESTAMP будет обновлено. Таким образом, столбец типа TIMESTAMP можно использовать, чтобы определить, было ли произведено изменение какого-либо значения в строке с момента ее последнего считывания. В таблице может быть только один столбец типа TIMESTAMP.

В MySQL Server тип столбца TIMESTAMP используется для автоматической записи текущих даты и времени при выполнении операций вставки или обновления. Допускается наличие нескольких столбцов типа TIMESTAMP в таблице, но в этом случае автоматически обновляется только первый из них. Столбец типа TIMESTAMP можно установить в значение, отличное от текущих даты и времени путем явного указания значения столбца при выполнении операций вставке и обновлении данных.