sqlite中datetime 判断相等时的异常情况

前端之家收集整理的这篇文章主要介绍了sqlite中datetime 判断相等时的异常情况前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

sqlite处理数据时发现的异常:

语句:select * from CouponPrint where PrintTime<='2013-11-07 14:20:00'

原表:


数据库中明明有这条语句,为什么查找不出来呢?

语句:select * from CouponPrint where PrintTime<='2013-11-07 14:33:00'

却能查询出来,通过上表对比没有发现任何问题。

想了很多可能,最后打开sqlite本地数据库文件核对,终于发现了问题所在:


看出来了么?本地文件存储就是有区别的,2013-11-07 14:20:00和2013-11-07 14:20:00.000不一样。

由此推断,sqlite中对于时间的比对采用的可能是字符串比较,而不是真正的时间比对。

留此为证。兄弟我也认真过。

猜你在找的Sqlite相关文章