接触sqlite,源自大四毕设。我的导师一个项目为了实现跨平台,最后选择了Qt库。而sqlite是Qt的内嵌数据库。随着时间的推移,越发对sqlite喜爱。平时也收集了一些资料,故此推荐给大家。
sqlite是一种嵌入式/内存轻型数据库,它跨平台,快速,小巧,高效。如果你想选择小型数据库,我相信sqlite将是最佳的选择。它要比access数据库强大很多很多。当然如果你想说MSsql或者MysqL要比sqlite高效的多。这一点我解释如下:
首先:sqlite定位是小型数据库(轻型),处理大数据自然有局限性。定位标准不同。
其次:sqlite在处理小型数据并不逊色于大型数据库,而且他体积更小。
由于这方面的资料比较多,我以链接的形式来介绍。
入门:
什么是sqlite:http://baike.baidu.com/view/19310.htm
sqlite官网:http://www.sqlite.org/
sqlite中文社区:http://www.sqlite.com.cn/
最希望大家去的sqlite官网,里面写的很详细,虽然是英文。
sqlite局限:
sqlite局限性:http://apps.hi.baidu.com/share/detail/17043674
sqlite不支持的操作:http://apps.hi.baidu.com/share/detail/17095537
sqlite封装:
Cppsqlite:http://www.codeproject.com/KB/database/CppSQLite.aspx
该类是最方便的类之一,可惜不支持加密和中文路径,后来有人做了改进
支持中文路径:http://hi.baidu.com/wangguang246/blog/item/4a521f96f5b2006355fb96bf.html
关于加密:
wxsqlite3:http://wxcode.sourceforge.net/components/wxsqlite3/
这个库更新的很快,完全和sqlite3的发布同步,同时支持强大的加密功能,但是这个类使用关于麻烦,后来有人仅仅获取里面的加密功能和Cppsqlite结合使用。
加密的另一种方案:http://news.2ky.cn/149/4101.htm
如何编加密版本的sqlite:
http://blog.csdn.net/littletigerat/archive/2010/04/19/5502491.aspx
http://blog.csdn.net/littletigerat/archive/2010/04/20/5502690.aspx
如果编译加密版本的sqlite请认真看上面两篇博客,我亲自测试,但是有些错误,后来做了一些说明:
上面的教程中有许些错误(测试版本3.73)
1:vc6编译sqlite源码的时候操作的时候,会提示提示出现找不到:“sqlite3rtree.h”头文件
解决方法:这个地方改成rtree.h
2:编译加密时候复制到page。c的时候,同时要把复制的文件中的#include“sqlite3.c”去掉
3:引用的时候要把sqlite3.h中的#ifdefsqlITE_HAS_CODEC以及对应的#endif去掉
1:官网自带的工具,黑色的doc,不好用~
2:Navicatforsqlite