Qt使用CipherSqlite插件访问加密的sqllite数据库

1.下载

git clone https://github.com/devbean/QtCipherSqlitePlugin.git

2.编译CipherSqlite插件

使用qt打开QtCipherSqlitePlugin项目,并构建插件

3.将构建的插件复制到安装目录

4.使用DB Browser (SQLCipher)创建数据库并加密



5.qt使用CipherSqlite插件连接加密数据库

cpp 复制代码
	QString dbFilePath = QCoreApplication::applicationDirPath() + "/db/test.db";
    QSqlDatabase dbconn = QSqlDatabase::addDatabase("SQLITECIPHER");
    dbconn.setDatabaseName(dbFilePath);

    dbconn.setPassword("123");
    //如果在debug窗口输出dbconn.driver():  SQLiteCipherDriver(0x2360f83aa30),证明插件导入成功
    qDebug() << "dbconn.driver(): " << dbconn.driver();
    dbconn.setConnectOptions("QSQLITE_USE_CIPHER=sqlcipher; SQLCIPHER_LEGACY=4; SQLCIPHER_LEGACY_PAGE_SIZE=4096");

    // 打开数据库连接
    if (dbconn.open()) {
        qDebug() << "Success to open the database";
    } else {
        qDebug() << "Failed to open the database:" << dbconn.lastError().text();
    }

相关推荐
m0_518019482 分钟前
使用Seaborn绘制统计图形:更美更简单
jvm·数据库·python
卓怡学长12 分钟前
m280本科生导师指导平台
java·数据库·spring·tomcat·maven·intellij-idea
大尚来也13 分钟前
Serverless架构深度解析:适用场景、核心局限与破局之道
数据库
Wave84522 分钟前
非阻塞按键(单击,双击,长按)
数据库
2401_8318249628 分钟前
为你的Python脚本添加图形界面(GUI)
jvm·数据库·python
久违的太阳29 分钟前
记录一次ORACLE RAC安装PSU补丁步骤
数据库·oracle
2401_8796938730 分钟前
用Pygame开发你的第一个小游戏
jvm·数据库·python
娇娇yyyyyy36 分钟前
QT编程(15): Qt 按键事件和定时器事件
开发语言·qt
xushichao198939 分钟前
实战:用OpenCV和Python进行人脸识别
jvm·数据库·python
sthnyph1 小时前
初识MySQL · 库的操作
数据库·mysql