c/c++ SQLite3的常用使用方法;
下面测试用的sqlite例子;大家可以参考使用;
    #include "CppSQLite3.h"
    Class TestSqlite{
        //定义db指针
    private:
        CppSQLite3DB* m_pSqlDb;
        TestSqlite()
        {
           m_pSqlDb = NULL;
           Init();
       }
       ~TestSqlite()
       {
           if ( m_pSqlDb )
           {
               m_pSqlDb.Close();
               delete m_pSqlDb;
               m_pSqlDb = NULL;
           }
       }
       //初始化
       BOOL Init()
       {
           //初始化sqlite指针
           if ( m_pSqlDb || !(m_pSqlDb = new CppSQLite3DB))
           {
               return FALSE;
           }
           try
           {
               string strDbFile = "D:\\Chunk.s3db";
               m_pSqlDb->open( strDbFile.c_str() );//打开指定位置的本地数据库
           }
           catch (CppSQLite3Exception& e)//处理sqlite异常
           {
               return FALSE;
           }
           return TRUE;
       }
   public:
       //读出db中指定名称的表数据
       void ReadAllLine(map<int,int>& mpDbInfo,const string &TblName)
       {
           try
           {
               char szCmd[];
               sprintf( szCmd, "SELECT id,testnum FROM %s;",TblName);
               CppSQLite3Query query = m_pSqlDb->execQuery( szCmd );//执行查询语句
               while(!query.eof())
               {
                   int id = query.getIntField( "id");    //列项为id的值
                   int testnum = query.getIntField( "testnum");    //列项testnum的值
                   mpDbInfo.insert(make_pair(id,testnum));//插入map
                   query.nextRow();//继续下一行
               }
               query.finalize();//结束查询,释放内存
           }
           catch (CppSQLite3Exception& e)
           {
               return;
           }
       }
       //更新指定数据
       BOOL DeleteLine(const string& TblName,const int& id,const int& num)
       {
           try
           {
               char szCmd[];
               sprintf( szCmd, "update %s set num = %d WHERE id=%d;",TblName,num,id);//更新内容
               m_pSqlDb->execDML( szCmd );
           }
           catch (CppSQLite3Exception& e)
           {
               return FALSE;
           }
           return TRUE;
       }
       //删除指定数据
       BOOL DeleteLine(const string& TblName,const int& id)
       {
           try
           {
               char szCmd[];
               sprintf( szCmd, "DELETE FROM %d WHERE id=%d;", TblName,id);//删除语句
               m_pSqlDb->execDML( szCmd );
           }
           catch (CppSQLite3Exception& e)
           {
               return FALSE;
           }
           return TRUE;
       }
  };
c/c++ SQLite3的常用使用方法;的更多相关文章
- 我的Android进阶之旅------>温习Sqlite3的常用操作
		
前言;今天要写一个应用来调节系统的Brightness值,来改变系统的背光亮度.由于刚开始些的时候没有考虑Brightness的最小值,直接托动SeekBar到最小值(为0).瞬间,屏幕变成全黑,失败 ...
 - WebAPi添加常用扩展方法及思维发散
		
前言 在WebAPi中我们通常需要得到请求信息中的查询字符串或者请求头中数据再或者是Cookie中的数据,如果需要大量获取,此时我们应该想到封装一个扩展类来添加扩展方法,从而实现简便快捷的获取. We ...
 - StringUtils中的常用的方法
		
org.apache.commons.lang.StringUtils中常用的方法,这里主要列举String中没有,且比较有用的方法: 1. 检查字符串是否为空: static boolean isB ...
 - JOptionPane类提示框的一些常用的方法
		
JOptionPane类提示框的一些常用的方法 XMLOracleSwing 最近在做swing程序中遇到使用消息提示框的,JOptionPane类其中封装了很多的方法. 很方便的,于是就简单的整理了 ...
 - 常用js方法
		
function dateGetter(name, size, offset, trim) { offset = offset || 0; return function (date) { var v ...
 - jQuery操作Table tr td常用的方法
		
虽然现在DIV+CSS进行页的布局大行其道,但是很多地方使用table还是有很多优势,用table展示数据是比较方便的,下面汇总了jQuery操作Table tr td常用的方法,熟记这些操作技巧,下 ...
 - iOS常用公共方法
		
iOS常用公共方法 字数2917 阅读3070 评论45 喜欢236 1. 获取磁盘总空间大小 //磁盘总空间 + (CGFloat)diskOfAllSizeMBytes{ CGFloat si ...
 - org.apache.commons.lang.StringUtils中常用的方法
		
org.apache.commons.lang.StringUtils中常用的方法,这里主要列举String中没有,且比较有用的方法: 1. 检查字符串是否为空: static boolean isB ...
 - 常用js方法整理common.js
		
项目中常用js方法整理成了common.js var h = {}; h.get = function (url, data, ok, error) { $.ajax({ url: url, data ...
 
随机推荐
- 网页中使用CSS和JS阻止用户选择内容
			
CSS实现 body{ -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none; ...
 - JSP手动注入 全
			
检测可否注入 http://****.house.sina.com.cn/publics/detail.jsp?id=7674 and 1=1 (正常页面) http://****.house.sin ...
 - echarts仪表盘如何设置图例(legend)
			
echarts 图表中经常需要对不同的颜色设置图例标识不同的意义,而仪表盘的指针只存在一个值,如何表示不同颜色的意义,官网配置项并未给出该功能: 不同段的颜色是通过axisLine->lineS ...
 - 使用DBeaver连接hive
			
介绍 在hive命令行beeline中写一些很长的查询语句不是很方便,查询结果也不是很友好,于是找了一个hive的客户端界面工具DBeaver,它也支持很多符合JDBC连接的数据库,例如MySQL.O ...
 - 通过数据,修改金蝶ERP的收料通知单不合格和合格数量,修改生产投料单,委外发出数量
			
update POInStockEntry set FAuxNotPassQty=不合格数量 where FInterID=(select FInterID from POInStock where ...
 - 实现容器的底层技术 - 每天5分钟玩转 Docker 容器技术(30)
			
为了更好地理解容器的特性,本节我们将讨论容器的底层实现技术.cgroup 和 namespace 是最重要的两种技术.cgroup 实现资源限额, namespace 实现资源隔离. cgroup c ...
 - PO/VO/POJO/BO/VO图解
 - python 最佳实践与资源汇总
			
python 最佳实践 (部分) 一. 结构化工程 文件 功能 README.rst readme LICENSE 许可证 setup.py 打包和发布管理 requirements.txt 开发依赖 ...
 - Linux命令 文件备份归档恢复
			
cp [功能说明] 文件的备份 英文xxxx #cp命令将源文件复制到另外安全的地方,复制的文件和源文件是两个相互独立的文件,对认识一个文件的操作不影响另一个文件,但与符号链接文件中的硬链接是有区别 ...
 - Owl Carousel幻灯片插件的使用
			
Owl Carousel 是一个强大.实用但小巧的 jQuery 幻灯片插件,它具有一下特点: 兼容所有浏览器 支持响应式 支持 CSS3 过度 支持触摸事件 支持 JSON 及自定义 JSON 格式 ...