最近遇到个很麻烦的问题。客户在他机器上,把日期格式改了。2011-10-1在他那就显示为2011年10月1日 10点10分10秒
在sqlite数据库中,所有的datetime格式数据全变成这种格式了,这种格式的数据读出来后由于不是标准的日期型,程序直接报错。
想请问各位大侠,看能不能从读取sql语句时,就把日期格式给转成标准的格式。
我尝试了以下方法,不行。
select datetime(操作时间),* from 操作记录 where 操作时间>='2011-08-01' and 操作时间<='2011-09-01'
谢谢了。
------解决思路----------------------
示例:
select ss,strftime("%Y-%m-%d %H:%M:%S",ss),datetime(ss) from (
replace(replace(replace(replace(replace(replace( '2011年10月01日 10点10分10秒','年','-'),'月','-'),'日',''),'点',':'),'分',':'),'秒','') as ss) a
注意:如果日期<=9,要加0,否则要出错
------解决思路----------------------
select datetime(操作时间),* from 操作记录 where date(操作时间)>='2011-08-01' and
date(操作时间)<='2011-09-01'
------解决思路----------------------
没关系,SQLITE本身用的就是弱数据类型。 不用关心它直接显示。