Формат даты T-Sql для секунд с последней эпохи / форматирование для ввода sqlite

Я полагаю, что это должно быть что-то вроде:

CONVERT(CHAR(24), lastModified, 101)

Однако я не уверен в правильном значении третьего параметра.

Спасибо!


Я пытаюсь написать скрипт для копирования моей sql server db в sqlite файл, который загружается в приложение air, которое затем синхронизирует данные с другим sqlite файлом. У меня куча проблем с датами. Если я выбираю дату в air и пытаюсь вставить ее, она не работает, потому что она не в правильном формате... даже если это была правильная дата. Я решил попробовать поэкспериментировать с временем unix, поскольку это единственное, что работало до сих пор. Я рассматриваю возможность оставить их в формате varchar, потому что я все равно не сортирую по ним.

Последняя эпоха - это когда 1970 год по Гринвичу?

SELECT DATEDIFF(s,'19700101 05:00:00:000',lastModified)

См. также Дата эпохи

Комментарии (0)

базы данных SQLite> выбрать датавремя(); 2011-01-27 19:32:57

данных SQLite> выберите функцию strftime('%г-%м-%д %ч:%м:%ы','сейчас'); 2011-01-27 19:33:57

Ссылка: (Функции даты и времени)[http://sqlite.org/lang_datefunc.html]

Комментарии (0)
Решение

Я завелся с помощью формата 120 в MSSQL:

convert(char(24), lastModified, 120)

Каждый раз, когда мне нужно было выбрать дату в SQLite для отображения целей я использовал:

strftime(\"%Y-%m-%d %H:%M:%S\", dateModified) as dateModified

Сейчас мне просто нужен четкий и дружелюбный способ отображения даты для пользователя!

редактировать: примите ответа переходит к тому, кто показывает мне, как отображать дату красиво из SQLite ;п

Комментарии (2)

Дайте определение понятию "последняя эпоха". Близко ли это?

Select Cast(lastModified As Integer)

Комментарии (0)

Если вы храните их как varchar, храните их как YYYYMMDD. Таким образом, вы сможете сортировать их позже, если захотите.

Комментарии (0)

SQL сервер имеет только 2 безотказный форматы даты

ИСО = ГГГГММДД, запустить это, чтобы увидеть, что

  select convert(varchar(10),getdate(),112)

В формате iso8601 = гггг-ММ-ДД стороны thh:mm:СС:МММ(без пробелов) запустить это, чтобы увидеть, что

select convert(varchar(30),getdate(),126)

Чтобы узнать больше о том, как даты хранятся в SQL сервере я написал Как даты хранятся в SQL сервере?

Комментарии (0)