最近因为工作原因,需要使用sqlite数据库。sqlite数据库小并且使用方便,感觉挺不错的。但有一个不足就是没有对数据库进行加密,不过好的是sqlite预留有加密的接口,我们可以直接调用即可。我也是参考网上的资料对数据库进行加密:
sqlite数据库默认没有加密功能,对一些需要对工程文件进行保密的场合产生了不便,本文以QT4.4.3为例,
对qt源代码中的sql模块进行修改,为qt集成的sqlite数据库添加了加密功能.
1. /wxsqlite3_prj/sqlite3目录 下的文件进行编译生成 sqlite3.lib
2 将 sqlite3.h 和 上一步骤生成的sqlite3.lib 拷贝到目录 ?:\Qt\4.4.3\src\plugins\sqldrivers\sqlite 中.
3 将 ?:\Qt\4.4.3\src\plugins\sqldrivers\sqlite 目录下的sqlite.pro文件修改为:
TARGET = qsqlite
# 不使用qt自带的sqilte源码文件,而是使用外部生成的库
win32:LIBS += sqlite3.lib
#
HEADERS = ../../../sql/drivers/sqlite/qsql_sqlite.h
SOURCES = smain.cpp \
../../../sql/drivers/sqlite/qsql_sqlite.cpp
!system-sqlite:!contains( LIBS, .*sqlite.* ) {
CONFIG(release, debug|release):DEFINES *= NDEBUG
DEFINES += SQLITE_CORE SQLITE_OMIT_LOAD_EXTENS