您的位置:首页 > 数据库

在MFC中使用SQLite

2015-06-24 20:12 267 查看
一、SQLite简介

SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。【百度百科】

官方下载地址:http://www.sqlite.org/download.html

二、生成静态链接库sqlite3.lib

1,打开vs2008 ,文件->新建->项目->Visual C++->Win32->Win32 项目,项目名称输入SQLite,点击下一步,应用程序类型选择"静态库",附加选项中取消选中“预 编译头”。

2.将sqlite3.c,sqlite3.h两个文件复制到这个工程目录下,然后在项目中将这两个文件添加进来,然后再编译运行,会出现数据类型转换的一些警告,不用管它,然后在 Debug目录下就会生成一个sqlite3.lib文件。

三、这里推荐一个MFC下SQLite套件:

SQLite_Wrapper : 包含SQLite封装类(SQLite.cpp/SQLite.h)、sqlite3.h头文件、SQLite3.lib编译好静态库,直接拿过来就可用;

SQLiteSpy_1.9.8:可视化查看SQLite数据工具,很好用;

将SQLite_Wrapper中的文件项目中,添加头文件,并加入如下代码:

#include "SQLite_Wrapper/SQLite.h"

#pragma comment(lib,"SQLite_Wrapper/SQLite3.lib")

using namespace SQLite;

这样就能用了。

四、SQLite基本使用

//SQLite3数据库

Database m_db;

//建表

m_db.Open(szPath);

m_db.ExecuteSQL("CREATE TABLE 收件箱(序号 INTEGER PRIMARY KEY autoincrement,发件人 VARCHAR(255),号码 VARCHAR(255),时间 VARCHAR(255),内容 VARCHAR(255));" );

//增加

m_db.ExecuteSQL("INSERT INTO \"收件箱\" VALUES(NULL , 'name', 'num', 'time', 'content');");

//查询所有

TablePtr table;

Table* pTable;

table = m_db.QuerySQL2(_T("SELECT * FROM 收件箱 ORDER BY 序号 DESC"));

//删除

m_db.ExecuteSQL("DELETE FROM \"收件箱\" WHERE \"序号\"=(SELECT min(\"序号\") from \"收件箱\");");

五、参考

SQLite套件:http://download.csdn.net/detail/kimihong/8835713
http://blog.sina.com.cn/s/blog_5758bd010101k0h2.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: