2010-11-16 45 views
2

不能相信我必须在这里问这个。即使使用谷歌搜索也没有帮助。如何格式化SQLite的日期和时间值?

我想这样做:

insert into atable (adatefield,atimefield,adatetimefield) values (A,B,C); 
  • adatefield被定义为DATE
  • atimefield被定义为TIME
  • adatetimefield被定义为DATETIME

什么我把对于A,B和C?

它很好,它是免费的,但SQLite的文档是可怕的。

回答

3

日期,时间和日期时间字段实际上都会存储日期时间,它只取决于您插入的日期时间字段,并且它们都将使用日期字符串。

可以

insert into atable values("2010-11-16","14:12:22","2010-11-16 14:12:22"); 

或者可以真正地插入“2010-11-16 14点12分22秒”到的所有字段,然后选择他们回来:

select date(adatefield), time(atimefield), datetime(adatetimefield) from atable; 

如果然而,您要确保字段只包含完全是日期,时间或日期时间,并且您是从变量插入的,那么您可以

insert into atable values(date(thedate),time(thedate),datetime(thedate)); 

Sqlite无类型使一些事情变得非常简单,但会混淆或使其他一些事情复杂化。

+0

非常感谢。 – cja 2010-11-16 17:31:06