Формат даты T-Sql для секунд с момента последней эпохи/форматирование для ввода sqlite
Вопрос
Я предполагаю, что это должно быть что-то вроде:
CONVERT(CHAR(24), lastModified, 101)
Однако я не уверен в правильности значения третьего параметра.
Спасибо!
Что ж, я пытаюсь написать сценарий для копирования базы данных моего сервера sql в файл sqlite, который загружается в приложение air, которое затем синхронизирует данные с другим файлом sqlite.У меня масса проблем со свиданиями.Если я выберу дату в эфире и попытаюсь вставить ее, у меня не получится, потому что она не в правильном формате...даже если это была действительная дата с самого начала.Я решил попробовать поэкспериментировать со временем unix, поскольку это единственное, что пока работало.Я подумываю просто оставить их как varchar, потому что я все равно по ним не сортирую.
Решение 3
Я использовал формат 120 в MS SQL:
convert(char(24), lastModified, 120)
Каждый раз, когда мне нужно было выбрать дату в SQLite для целей, не связанных с отображением, я использовал:
strftime(\"%Y-%m-%d %H:%M:%S\", dateModified) as dateModified
Теперь мне просто нужен читаемый/дружественный способ отображения даты пользователю!
редактировать:принять ответ достается тому, кто покажет мне, как красиво отображать дату из sqlite; p
Другие советы
Последняя эпоха – это когда 1970 год по Гринвичу?
SELECT DATEDIFF(s,'19700101 05:00:00:000',lastModified)
Смотрите также Дата эпохи
sqlite> выберите дату и время();
2011-01-27 19:32:57
sqlite> select strftime('%Y-%m-%d %H:%M:%S','сейчас');
2011-01-27 19:33:57
ССЫЛКА:
(Функции даты и времени) [http://sqlite.org/lang_datefunc.html]
Дайте определение понятию «последняя эпоха».Это близко?
Выберите Cast (lastModified As Integer)
Если вы храните их как varchar, сохраните их как ГГГГММДД.Таким образом, вы МОЖЕТЕ отсортировать их позже, если захотите.
SQL-сервер имеет только два отказоустойчивых формата даты.
ISO = ГГГГММДД, запустите это, чтобы увидеть это
select convert(varchar(10),getdate(),112)
ISO8601 = гггг-мм-дд Чч:мм:сс:ммм (без пробелов) запустите это, чтобы увидеть это
select convert(varchar(30),getdate(),126)
Чтобы узнать больше о том, как даты хранятся на сервере SQL, я написал Как даты хранятся в SQL Server?