我试图将日期时间值插入SQLite数据库.这似乎是成功的,但当我尝试检索值时,有一个错误:
<无法读取数据>
SQL语句是:
create table myTable (name varchar(25), myDate DATETIME) insert into myTable (name,mydate) Values ('fred','jan 1 2009 13:22:15')
itowlson.. 144
您需要的格式是:
'2007-01-01 10:00:00'
即yyyy-MM-dd HH:mm:ss
但是,如果可能,请使用参数化查询,这样可以使您免于担心格式化详细信息.
您需要的格式是:
'2007-01-01 10:00:00'
即yyyy-MM-dd HH:mm:ss
但是,如果可能,请使用参数化查询,这样可以使您免于担心格式化详细信息.
在SQLite中存储日期的方法是:
yyyy-mm-dd hh:mm:ss.xxxxxx
SQLite还有一些可以使用的日期和时间函数.请参阅SQLite,日期和时间函数所理解的SQL.
您必须更改所提供的日期字符串的格式,以便能够使用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 %% %
另一种方法是将日期/时间格式化为已经接受的格式:
YYYY-MM-DD
YYYY-MM-DD HH:MM
YYYY-MM-DD HH:MM:SS
YYYY-MM-DD HH:MM:SS.SSS
YYYY-MM-DDTHH:MM
YYYY-MM-DDTHH:MM:SS
YYYY-MM-DDTHH:MM:SS.SSS
HH:MM
HH:MM:SS
HH:MM:SS.SSS
现在
参考:SQLite日期和时间函数
CURRENT_TIMESTAMP
在需要时使用,而不是OF NOW()
(这是MySQL)
阅读这:1.2 Date
和时间数据类型最好的数据类型来存储日期和时间是:
TEXT
最佳格式是: yyyy-MM-dd HH:mm:ss
然后阅读此页; 这是关于日期和时间的最佳解释SQLite
.我希望这对你有帮助