Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Timestamp в SQLite

262
12 июня 2009 года
Iktomy
1.2K / / 11.10.2004
Есть таблица в базе SQLite ver. 3. В таблице поле со свойством TIMESTAMP и значением по умолчанию CURRENT_TIMESTAMP.

При записи данных значение в поле подставляется, но только, почему-то, это значение не соответсвует времени на машине. Оно меньше ровно на три часа.

Подскажите, как это победить?
11
12 июня 2009 года
oxotnik333
2.9K / / 03.08.2007
сделать локальные настройки в СУБД
по умолчанию, видимо берет время по гринвичу
262
12 июня 2009 года
Iktomy
1.2K / / 11.10.2004
Оксотник, я тебя прощаю. Но вот найти, где это сделать - не могу. Есть тузлы sqlliteadmin и sqllite3explorer, но этой функции в них не нашел.

Покюрю, конечно, маны. Но если кто знает - ответте
262
15 июня 2009 года
Iktomy
1.2K / / 11.10.2004
Вот что посоветовали на другом форуме.

Функции current_time, current_date и current_timestamp не следует использовать для записи локального времени и даты на компьютере пользователя, т.к. время и дата в UTC отличается от времени и даты по Гринвичу (GMT).(например, для GMT+3 (Москва,...) разница будет 3 часа без учета перевода на "летнее" и "зимнее" время)

Можно записать так:

 
Код:
insert into mytable (vremia) values (datetime('now', 'localtime'))


Все рабдотает как нужно! Благодарю за подсказку Alexbootch
51K
17 июня 2009 года
localfire
1 / / 17.06.2009
Здравствуйте

Дело понятно в том, что sqlite блокирует всю базу при записи.

Объясните пожалуйста - это означает, что если одновременно два посетителя на сайте форму отправки отправят, то только у одного запишутся данные?

Или как?


Заранее спасибо
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог