Как я вставляю значение даты и времени в базу данных SQLite?

Я пытаюсь вставить значение даты и времени в базу данных SQLite. Это, кажется, успешно, но когда я пытаюсь получить значение существует ошибка:

<Не мог считать данные>

SQL-операторы:

create table myTable (name varchar(25), myDate DATETIME)
insert into myTable (name,mydate) Values ('fred','jan 1 2009 13:22:15')

106
задан Ciro Santilli 新疆改造中心法轮功六四事件 24 November 2015 в 10:24
поделиться

4 ответа

Вам нужен следующий формат:

'2007-01-01 10:00:00'

т.е. гггг-ММ-дд ЧЧ: мм: сс

Однако, если возможно, используйте параметризованный запрос, так как это избавит вас от беспокойства о детали форматирования.

144
ответ дан 24 November 2019 в 03:49
поделиться

Способ хранения дат в SQLite:

 yyyy-mm-dd hh:mm:ss.xxxxxx

SQLite также имеет некоторые функции даты и времени, которые вы можете использовать. См. SQL в понимании SQLite, функции даты и времени .

46
ответ дан 24 November 2019 в 03:49
поделиться

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

Я написал тонкую оболочку C # вокруг библиотеки SQLite раньше (при использовании SQLite с C #, конечно) для обработки вставок и извлечения в и из SQLite, как если бы я имел дело с объектами DateTime.

0
ответ дан 24 November 2019 в 03:49
поделиться

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

%d  day of month: 00
%f  fractional seconds: SS.SSS
%H  hour: 00-24
%j  day of year: 001-366
%J  Julian day number
%m  month: 01-12
%M  minute: 00-59
%s  seconds since 1970-01-01
%S  seconds: 00-59
%w  day of week 0-6 with sunday==0
%W  week of year: 00-53
%Y  year: 0000-9999
%%  % 

Альтернативой является форматирование даты / времени в уже принятом формате:

  1. ГГГГ-ММ-ДД
  2. ГГГГ-ММ-ДД ЧЧ: ММ
  3. ГГГГ-ММ-ДД ЧЧ: ММ: СС
  4. ГГГГ-ММ-ДД ЧЧ: ММ: СС.ССС
  5. ГГГГ-ММ-ДДТЧЧ: ММ
  6. ГГГГ-ММ-ДДТЧЧ: ММ: СС
  7. ГГГГ-ММ-ДДТЧЧ: ММ: СС.ССС
  8. ЧЧ: ММ
  9. ЧЧ: ММ: СС
  10. ЧЧ: ММ: СС.ССС
  11. сейчас

Ссылка: SQLite Функции даты и времени

17
ответ дан 24 November 2019 в 03:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: