使用CppSQLite3封装结合wxSQLite实现加密版的SQLite数据库操作类

本文介绍了如何利用CppSQLite3库和wxSQLite3实现SQLite数据库的加密操作。通过下载wxSQLite3源码,设置预定义宏并编译静态或动态库,可以使用sqlite3_key和sqlite3_rekey函数对数据库进行加密。
摘要由CSDN通过智能技术生成

最近用到SQLite数据库,刚开始想用ADO来搞,毕竟经常用,结果发现还挺麻烦,要装SQLite的ODBC驱动,装了以后还是连不上,听说这SQLite是开源项目,可以将开发库引入项目来直接操作,就在网上找了找对应封装好的库来使用(么办法,不想造轮子,况且网上的大牛多得是,人家造的肯定比自己好),找到了codeproject上的CppSQLite3这个封装库,看了看带的例子,迅速就可以上手使用,效果还不错。貌似,一切都是那么美好。忽然想到一个问题,这数据库没有密码吗?谁都可以访问吗?当然不可能,好吧,网上继续搜,sqlite3_key和sqlite3_rekey这两个函数出现了。然而我们的CppSQLite3封装类中没有这两个东西,几经折腾才知道SQLite3发布版中没有实现加密,又听说有个wxSQlite版可以,就下载下来,直接编译,提示几个头文件找不到,一查才知道还要安装什么wxWidgets,哎最烦这种动不动就要安装个什么东西的了。继续找,不经意间,发现一篇文章,很轻松的就编译出了带加密功能的sqlite库,再配合我们的CppSQLite3就完美了(什么?怎么配合?直接把原有的sqlite3.h,lib,dll替换成我们下边编译的就好啦)。好了,说了一堆废话,下边切入正题。

SQLite 3开源发布版不带加密功能,导出头文件中有sqlite3_key和sqlite3_rekey的定义,注释中说没有对应的实现(有加密实现的版本还需要在预编译中定义预处理宏SQLITE_HAS_CODEC才能开启这几个函数的功能)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值