一 为什么要选择SQLite

由于使用文本文件来记录测试数据,速度越来越慢的问题,经过园友推荐,使用了SQLite来进行数据的存储,再次感谢园友@LightSmaile。

关于这个问题,可以参考一下上一篇随笔中的介绍,为何要更换用数据库来存储数据。链接地址:http://www.cnblogs.com/fredliu/p/6692986.html

二 选择SQLite使用方法

当然SQLite的使用方法有很多,网上也有很多的介绍,经过筛选,我选择了使用一个封装好的MFC类,来使用SQL。

为什么要选择这个方案呢,因为我比较懒,既然有前辈做好了封装类,那直接拿过来用就好了。但是不能只做伸手党,在此介绍给园友。

CodeProject上的SQLite3Wrapper封装(http://www.codeproject.com/KB/windows/SQLite3Wrapper.aspx)

具体的使用方法,园友们可以参考一下这位朋友的介绍,使用比较简单:http://blog.csdn.net/akof1314/article/details/5937103

三 使用中遇到的问题一

环境上都搭好了,那么就开始使用了,使用中遇到的第一个问题,那就是一个错误提示 “SQLITE_MISUSE”

唉,好不容易引入SQLite,也写了不少代码,替换原来的方案了,一运行,啪,弹出来这一个错误,大晚上的搞的心情的不好了。心里还想着,赶紧把SQLite替换好原来的方案,搞完去Dota两盘呢,结果出师不利。

查看这个错误的解释

#define SQLITE_MISUSE      21   /* Library used incorrectly */

库使用不当,可我是按照事例中的方法去做的啊。

经过百度,大概了解,可能其中写的语句中有不符合规范的。

于是进过查找,找到其中多了一个“)”括号,我的天,把事例代码拷过来,增加数据后,位置不对。

fTest = gloableConfig.sqlite.DirectStatement("CREATE TABLE mainData(name varchar(50), count varchar(10)),LAvg varchar(10),LMax varchar(10),LMin varchar(10))");

啊哈哈,居然犯了这样的错误。

四 使用中遇到的问题二

这个问题解决了,然后继续跑,结果,嘎嘣,又跳出来这个错误。

我的天,这一次又是啥原因。

经过调试,找到错误代码行。

szQuery.Format("CREATE TABLE %s(index_Num varchar(10),L_L varchar(10),xSe varchar(10),ySe varchar(10),Tc varchar(10),uSe varchar(10),vSe varchar(10),X_S varchar(10),Y_S varchar(10),Z_S varchar(10))",strTemp);

这下仔细检查了了括号,也没问题,那么问题可能出在这个strTemp上。

查看strTemp的赋值

strTemp.Format("--%02d:%02d:%02d:%04d",time.wHour,time.wMinute,time.wSecond,nCeshixuhao);strTemp = strProXinghao + "--" + strTemplateName + strTemp;

心想是不是创建的表名里面不能有特殊的字符。

于是先把里面的“:”换成“_”,运行依然报同样的错误。

接着把“--”换成“_”,再运行下,OK了,不报错了。

原来是这个样字。

    strTemp.Format("_%02d_%02d_%02d_%04d",time.wHour,time.wMinute,time.wSecond,nCeshixuhao);strTemp = strProXinghao + "_" + strTemplateName + strTemp;

至此 SQLite3Wrapper的基本使用已经没问题了。

转载于:https://www.cnblogs.com/fredliu/p/6699183.html

MFC使用SQLite 学习系列 一: SQLITE_MISUSE错误相关推荐

  1. 大数据学习系列之八----- Hadoop、Spark、HBase、Hive搭建环境遇到的错误以及解决方法

    大数据学习系列之八----- Hadoop.Spark.HBase.Hive搭建环境遇到的错误以及解决方法 参考文章: (1)大数据学习系列之八----- Hadoop.Spark.HBase.Hiv ...

  2. 深度学习系列错误笔记(一)之print(‘gpu‘,torch.cuda.is_available())输出gpu False

    0.问题出现背景 ps: win10 64位环境.cuda已经安装,显卡驱动版本472对应torch1.8.0版本对应cuda10.2版本都没问题. 因为硬盘坏了,所以从头开始装按照深度学习系列(一) ...

  3. [源码、文档、分享] iOS/iPhone学习系列、代码教程----~~~持续更新中~~~

    转自:http://www.devdiv.com/iOS_iPhone-iOS_iPhone%E5%AD%A6%E4%B9%A0%E7%B3%BB%E5%88%97%E3%80%81%E4%BB%A3 ...

  4. [源码、文档、分享] iOS/iPhone学习系列、代码教程(转)

    iOS/iPhone学习系列.代码教程----~~~持续更新中~~~ http://www.devdiv.com/iOS_iPhone-iOS_iPhone%E5%AD%A6%E4%B9%A0%E7% ...

  5. Android+Jquery Mobile学习系列(6)-个人信息设置

    目录导航 本节开始,进行代码的实战练习.我的这个App是管理保险客户信息的,数据采用Sqlite存储在本地手机上,第一次使用需要先登记自己的个人信息,这个功能非常简单,也无关紧要,我是拿这个练手,方便 ...

  6. 机器人操作学习系列分享:模仿学习

    2020-07-29 20:16:12 随着学会的队伍不断发展壮大,分支机构的发展愈发完善,丰富多彩的分支活动与学术分享也频频呈现.疫情期间,CAAI认知系统与信息处理专委会积极倡导学会"疫 ...

  7. 数据库MYSQL学习系列三

    数据库MYSQL学习系列三 三.MYSQL事务与存储引擎 3.1-数据库事务 什么是事务 一系列有序的数据库操作: o要么全部成功 o要么全部回退到操作前的状态 o中间状态对其他连接不可见 事务的 ...

  8. linux x64 asm 参数传递,NASM汇编学习系列(1)——系统调用和参数传递

    0. 说明 本学习系列代码几乎完全摘自:asmtutor.com,如果英文可以的(也可以用谷歌浏览器翻译看),可以直接看asmtutor.com上的教程 系统环境搭建:(我用的是ubuntu18.04 ...

  9. Caffe学习系列(22):caffe图形化操作工具digits运行实例

    上接:Caffe学习系列(21):caffe图形化操作工具digits的安装与运行 经过前面的操作,我们就把数据准备好了. 一.训练一个model 右击右边Models模块的" Images ...

  10. Caffe学习系列(13):数据可视化环境(python接口)配置

    原文有更新: Caffe学习系列(13):数据可视化环境(python接口)配置 - denny402 - 博客园 http://www.cnblogs.com/denny402/p/5088399. ...

最新文章

  1. package.json 依赖包版本号
  2. pocoserver无限重启_poco相机老版本
  3. ios 将矩形图片裁剪成圆形图片
  4. libsvm 使用介绍
  5. 2.2.2 进程调度的 时机 切换与过程 调度方式
  6. DataWorks百问百答01:数据同步该用什么资源组
  7. java多线程并行执行命令_深入理解Java多线程与并发框(第④篇)——重排序、屏障指令、as-if-serial规则...
  8. java怎么把数组的元素个数_想问一下怎样才可以把一个数 放在已知数组里面
  9. eks volumn s3_和平精英:SMG战队无缘总决赛,S3前提退场原因一览
  10. pom.xml文件中nonFilteredFileExtension标签
  11. 自学mysql还是sql好_如何自学SQL?
  12. 元宇宙与泛娱乐的邂逅:次世代第一CP养成记
  13. 矩阵的求逆:inv( )
  14. html5 声控游戏,声控最爱的10款声音类APP,有趣又好玩!
  15. 优秀课程案例:母亲节!用Scratch编程送给母亲最好的贺卡礼物!
  16. 博科 SAN交换机配置文件备份和恢复(华为SNS系列交换机为例OEM博科)
  17. STM8L051 同时使用RTC和USART通信
  18. jmeter可以做接口测试和压力测试(较全)
  19. mysql提取手机号_如何使用mysql查询语句从用户手机号中提取纯号码
  20. go语言读文件 java读文件_如何从Java中的文本文件逐行读取

热门文章

  1. 鸿蒙系统可以微信吗,“微信”跟鸿蒙系统,只能选择一个,华为尴尬了
  2. 搞笑--网络小说-紫川 高考题-(附答案)
  3. 步步深入:MySQL 架构总览->查询执行流程->SQL 解析顺序(转)
  4. 如何删除重复项只保留最新项
  5. Derek Sivers:我是一个慢思考者(译)
  6. 诺禾:和Java一样能用汉字编程的神奇语言
  7. word中“项目符号”和后面的文字间隔太远
  8. ios开发工程师常见面试题汇总
  9. 【三】Apache的管理及优化
  10. 使用ArrayList集合,对其添加10个不同的元素,并使用Iterator遍历该集合