This is my code, and I am not getting any errors.
Somehow the db is unencrypted.
#include <QtSql/QSqlError>
#include <QtSql/QSqlDatabase>
#include <QtSql/QSqlQuery>
#include <QtSql/QSqlRecord>
#include <QVariant>
#include <QDebug>
shonaDB::shonaDB()
{
dbCopy->setDatabaseName("shonaOld.db");
db->setDatabaseName("shonaNew.db");
if(!db->open())
{
qDebug() << "db open fail";
}
if(!dbCopy->open())
{
qDebug() << "dbCopy open fail";
}
qry.prepare("PRAGMA key = 'xyz'");
if(!qry.exec())
{
qDebug() << "key fail";
}
}
void shonaDB::copyDatabase()
{
qry.prepare("ATTACH DATABASE 'newDB' AS encrypted KEY 'xyz' ");
if(!qry.exec())
{
qDebug() << dbCopy->lastError().text();
}else{
qDebug()<< "Success ATTACH";
}
qry.prepare("CREATE TABLE encrypted.dictionary (txtVar text, txtVarTwo text, txtVarThree text);");
if(!qry.exec())
{
qDebug() << dbCopy->lastError().text();
}else{
qDebug()<< "Success ct";
}
qry.prepare("INSERT INTO encrypted.dictionary SELECT * FROM dictionary;");
if(!qry.exec())
{
qDebug() << dbCopy->lastError().text();
}else{
qDebug()<< "Success transfer";
}
}
#include <QtSql/QSqlError>
#include <QtSql/QSqlDatabase>
#include <QtSql/QSqlQuery>
#include <QtSql/QSqlRecord>
#include <QVariant>
#include <QDebug>
shonaDB::shonaDB()
{
db = new QSqlDatabase(QSqlDatabase::addDatabase("QSQLCIPHER","newDB"));
dbCopy = new QSqlDatabase(QSqlDatabase::addDatabase("QSQLCIPHER","oldDB"));
dbCopy->setDatabaseName("shonaOld.db");
db->setDatabaseName("shonaNew.db");
if(!db->open())
{
qDebug() << "db open fail";
}
if(!dbCopy->open())
{
qDebug() << "dbCopy open fail";
}
QSqlQuery qry(QSqlDatabase::database("newDB"));
qry.prepare("PRAGMA key = 'xyz'");
if(!qry.exec())
{
qDebug() << "key fail";
}
}
void shonaDB::copyDatabase()
{
QSqlQuery qry(QSqlDatabase::database("newDB"));
qry.prepare("ATTACH DATABASE 'newDB' AS encrypted KEY 'xyz' ");
if(!qry.exec())
{
qDebug() << dbCopy->lastError().text();
}else{
qDebug()<< "Success ATTACH";
}
qry.prepare("CREATE TABLE encrypted.dictionary (txtVar text, txtVarTwo text, txtVarThree text);");
if(!qry.exec())
{
qDebug() << dbCopy->lastError().text();
}else{
qDebug()<< "Success ct";
}
qry.prepare("INSERT INTO encrypted.dictionary SELECT * FROM dictionary;");
if(!qry.exec())
{
qDebug() << dbCopy->lastError().text();
}else{
qDebug()<< "Success transfer";
}
}
To copy to clipboard, switch view to plain text mode
Bookmarks