Como insiro o valor datetime em um database SQLite?

Eu estou tentando inserir um valor de data e hora em um database SQLite . Parece ser sucessessful mas quando eu tento recuperar o valor, há um erro:

As instruções SQL são:

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

O formato que você precisa é:

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

ou seja, aaaa-MM-dd HH: mm: ss

Se possível, no entanto, use uma consulta parametrizada, pois isso evita que você se preocupe com os detalhes de formatação.

A maneira de armazenar datas no SQLite é:

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

O SQLite também possui algumas funções de data e hora que você pode usar. Veja SQL como Entendido por SQLite, Funções de Data e Hora .

Você tem que mudar o formato da string de data que você está fornecendo para poder inseri-lo usando a function STRFTIME. Razão de ser, não há opção para uma abreviação do mês:

 %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 %% % 

A alternativa é formatar a data / hora em um formato já aceito:

  1. AAAA-MM-DD
  2. AAAA-MM-DD HH: MM
  3. AAAA-MM-DD HH: MM: SS
  4. AAAA-MM-DD HH: MM: SS.SSS
  5. AAAA-MM-DDTHH: MM
  6. AAAA-MM-DDTHH: MM: SS
  7. AAAA-MM-DDTHH: MM: SS.SSS
  8. HH: MM
  9. HH: MM: SS
  10. HH: MM: SS.SSS
  11. agora

Referência: Funções de data e hora do SQLite

Leia isto : 1.2 Date e hora Tipo de dados melhor tipo de dados para armazenar a data e hora é:

TEXT melhor formato do TEXT é: yyyy-MM-dd HH:mm:ss

Então leia esta página; É melhor explicar sobre data e hora no SQLite . Espero que isso lhe ajude

Use CURRENT_TIMESTAMP quando você precisar, em vez de NOW() (que é o MySQL)

Esse pode não ser o método mais popular ou eficiente, mas tenho a tendência de abrir mão de tipos de dados fortes no SQLite, já que todos eles são essencialmente despejados como strings de qualquer maneira.

Eu escrevi um wrapper C # fino ao redor da biblioteca SQLite antes (ao usar SQLite com C #, é claro) para manipular inserções e extrações de e para o SQLite como se eu estivesse lidando com objects DateTime.