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小技巧-两个盒子之间的间距问题
1.水平排放的盒子,水平间距是两个margin的累加 2.垂直排放的盒子,垂直间距是合并的取最大值
- activeMQ的安装
1.下载ActiveMQ 去官方网站下载:http://activemq.apache.org/ 2.运行ActiveMQ 解压缩apache-activemq-5.5.1-bin.zip, 修改配置 ...
- 在Quo.js下Tap和singleTap的区别
前两天上网搜开发手机页面的JS,看到了Quo.js下载下来后来看了一下,支持的触屏手势挺多的,在一般的开发中应该够用了,更让我喜欢它的一点是它跟JQ差不多(虽然功能不如JQ强大但是语法基本一致).这就 ...
- Xamarin App文件(apk)大小和启动时间的影响因素
Xamarin开发的时候大家都有一个疑问,就是apk文件会不会特别的大,启动会不会很慢.答案是肯定的,文件肯定大,启动肯定会慢,但是具体大多少.具体慢多少,有什么因素可以使apk文件稍微小一点.可以使 ...
- React + Redux + express+ antd 架构的认识
在过去的两周里,我使用这套技术栈进行项目页面的开发.下面是我个人的对于项目的一些看法: 首先:是项目的调试,我深表压力很大,项目是使用fibber去抓包调试的,也不知道我们项目的负责人,怎么能的我在每 ...
- Linux命令 查看文件内容
cat [功能说明] 查看文件的内容 #cat本身是一个串接命令,把指定一个或多个源文件的内容,利用>符号重定向到目标文件中,如果不指定重定向文件,则默认在标准输出设备上显示.此时,可以利用c ...
- jQuery未定义错误原因(jQuery is not define)
使用jQuery时,必须把它写在最前面,这样浏览器才会先加载jQuery,否则会提示缺少对象. 正确 <script type="text/javascript" src=& ...
- 【解决】VS2013 + Qt 5.7(5.6适用)使用QSqlDatabase出现“无法解析的外部符号"错误
原始日期: 2016-08-03 22:09 错误如下: error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __thiscal ...
- Linux网络服务10——远程访问及控制
Linux网络服务10--远程访问及控制 一.SSH概述 1.SSH简介 SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录.远程复制等功能.SSH协议对通信双方的数 ...
- oracle学习笔记(2)-基本术语
oracle基本术语 先上图. 相当粗糙的一个图,可能有些地方不够精细,大致结构基本是对的. 逻辑结构上从大到小的依次为文件(file)->表空间(tablespace)->段(segme ...