Здравствуйте, уважаемые посетители сайта ZametkiNaPolyah.ru. Продолжаем изучать базы данных и наше знакомство с библиотекой SQLite3. Мы уже сказали, что SQLite3 не имеет класса данных даты и времени, но вместо этого у SQLite3 есть функции, способные работать с датой и временем в том случае, если будет соблюден формат записи даты и времени. Обратим ваше внимание на то, что дата и время в SQLite3 может храниться с классом данных TEXT, REAL и INTEGER, для каждого из этих классов есть определенный формат записи даты и времени:

Класс данных Формат времени
TEXT В текстовом виде формат времени должен быть представлен как строка формата ISO8601:         «YYYY-MM-DD HH:MM:SS.SSS».
REAL В вещественном формате дата и время должны быть записаны, как число дней с момента отсчета юлианского календаря, то есть число дней с полудня 24 ноября, 4714 г. до нашей эры. Считайте дни и записывайте число.
INTEGER Чтобы указать дату и время в классе INTEGER, нужно использовать UNIX время, в данной случае дата и время будут записаны как число секунд 1970 г. 1 января полночи.

Вы спокойно можете выбрать любой из форматов хранения даты и времени в базе данных SQLite3, а при помощи встроенных функций отдавать клиенту дату и время в том формате, в котором ему будет удобно.

Возможно, эти записи вам покажутся интересными


Выберете удобный для себя способ, чтобы оставить комментарий

This article has 1 comment

  1. Валентин Reply

    Вот это меня раздражает в SQLite3 и одновременно нравится — она особенная. Разработчики настолько поленились, что не стали создавать тип данных даты и времени, хотя и так вполне себе работают базы данных

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Loading Disqus Comments ...