qt中sqlite时间和日期的用法

qt中sqlite时间和日期的用法

ID:8811416

大小:326.52 KB

页数:22页

时间:2018-04-08

qt中sqlite时间和日期的用法_第1页
qt中sqlite时间和日期的用法_第2页
qt中sqlite时间和日期的用法_第3页
qt中sqlite时间和日期的用法_第4页
qt中sqlite时间和日期的用法_第5页
资源描述:

《qt中sqlite时间和日期的用法》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、SQLite时间的保存与查询一时间的保存经过GOOGLE发现大多数的解决方法为datetime.ToString("s")来解决的,经过测试此方法虽然解决的问题,但还不够完美。因为这样格式化出来的时间在用工具SQLiteDeveloper查看时显示的时间看起来很怪,不直观。而且如果在SQLiteDeveloper手动修改了时间,在程序中会报错,因为这个时候保存的时间格式发现了改变。经过测试发现datetime.ToString("yyyy-MM-ddhh:mm:ss")可以很好的解决这个问题。二时间的查询如果你用SQLite作开发,一定少不了时间的查询,一定会让你动不少脑精。因为和

2、别的数据库不一样,就如要查询2009.3.2011:00:00领取工资的有多少人的SQL怎么写呢,你一定会写成:selectcount(*)fromTwherestatue='1'and[date]='2009-03-2011:00:00'仔细查看会发现有问题,因为没有结果,实际表中是有结果的,这是为什么,其实我也不没有搞清楚。这个问题还是在国外的一个论坛发现解决方法的。只要改一下上面的语句就可以了selectcount(*)fromTwherestatue='1'anddatetime([date])=datetime('2009-03-2011:00:00')orselectc

3、ount(*)fromTwherestatue='1'anddatetime([date])='2009-03-2011:00:00'记住2009-03-20不能写成为2009-3-20.以上方法经过测目前没有发现问题,当然我也是初次使用SQLite来开发一个小项目,也许还有问题没有发现出来,请各位指教!SQLite日期时间函数SQLite并没有datatime字段类型,但是可以在字符串类型字段中存储时间,并提供了一些比较实用的日期时间操作函数strftime(日期时间格式,日期时间字符串,修正符,修正符,……)strftime(日期时间格式,日期时间字符串)也就等价于AAuto中

4、的:time(日期时间字符串,日期时间格式),sqlite与AAuto使用的格式化语法也一样。参考:http://www.aau.cn/doc/reference/libraries/kernel/time/time.htmlstrftime()函数返回一个经过格式化的日期时间,它可以用下面的符号对日期和时间进行格式化:%d一月中的第几天01-31%f小数形式的秒,SS.SSSS%H小时00-24%j一年中的第几天01-366%JJulianDayNumbers%m月份01-12%M分钟00-59%s从1970-01-01日开始计算的秒数%S秒00-59%w星期,0-6,0是星期天

5、%W一年中的第几周00-53%Y年份0000-9999%%%百分号date,time,datetime,julianday函数date(日期时间字符串,修正符,修正符,……)等价于strftime(“%Y-%m-%d”,…)time(日期时间字符串,修正符,修正符,……)等价于strftime(“%H:%M:%S”,…)datetime(日期时间字符串,修正符,修正符,……)等价于strftime(“%Y-%m-%d%H:%M:%S”,…)julianday(日期时间字符串,修正符,修正符,……)等价于strftime(“%J”,…)日期时间字符串可以用以下几种格式:格式有严格的要

6、求2008-06-1503:35:28日期只能用'-'分隔,时间只能用':'分隔,不足二位数的必须补零1.[*]YYYY-MM-DD2.[*]YYYY-MM-DDHH:MM3.[*]YYYY-MM-DDHH:MM:SS4.[*]YYYY-MM-DDHH:MM:SS.SSS5.[*]YYYY-MM-DDTHH:MM6.[*]YYYY-MM-DDTHH:MM:SS7.[*]YYYY-MM-DDTHH:MM:SS.SSS8.[*]HH:MM9.[*]HH:MM:SS10.[*]HH:MM:SS.SSS11.[*]now12.[*]DDDD.DDDD在第五种到第七种格式(ISO8601)中

7、的“T”是一个分割日期和时间的字符;第八种到第十种格式只代表2000-01-01日的时间,第十一种格式的’now’表示返回一个当前的日期和时间,使用格林威治时间(UTC);第十二种格式表示一个JulianDayNumbers。修正符日期和时间可以使用下面的修正符来更改日期或时间:1.[*]NNNdays2.[*]NNNhours3.[*]NNNminutes4.[*]NNN.NNNNseconds5.[*]NNNmonths6.[*]NNNyears7.[*]star

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。