QT的QSQLITE数据库,实现数据库加密
sqlitecipher:这个插件库可以在github上面找到,找到之后自己编辑需要的版本就行了;编译出来的dll文件需要放在:程序生成目录xxx-debug\sqldrivers\文件夹下面。调用之后,就可以在本地创建出数据库;数据库使用完毕之后,调用。
·
首先QT本身自己就支持SQLITE数据库,但还是没有对数据库加密的功能,所以我们需要使用插件去实现该功能:
sqlitecipher:这个插件库可以在github上面找到,找到之后自己编辑需要的版本就行了;
编译出来的dll文件需要放在:程序生成目录xxx-debug\sqldrivers\文件夹下面
创建加密数据库:
QString sPath = QApplication::applicationDirPath()+"/"+account+".db";
m_database = QSqlDatabase::addDatabase("SQLITECIPHER");
m_database.setConnectOptions("QSQLITE_CREATE_KEY");
m_database.setUserName(account);
m_database.setPassword(password);
m_database.setDatabaseName(sPath);
读取加密数据库:
QString sPath = QApplication::applicationDirPath()+"/"+account+".db";
m_database = QSqlDatabase::addDatabase("SQLITECIPHER");
m_database.setUserName(account);
m_database.setPassword(password);
m_database.setDatabaseName(sPath);
最后需要调用
QSqlDatabase::open();
调用之后,就可以在本地创建出数据库;
数据库使用完毕之后,调用
QSqlDatabase::close();关闭数据库

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)