diff options
| author | 2017-02-09 04:37:26 -0500 | |
|---|---|---|
| committer | 2017-02-09 04:37:26 -0500 | |
| commit | c9d6debf9015b7853c3e061bbc64a555d85e2fcd (patch) | |
| tree | 53341bc57ae9fbad2beb5b6c08d97a68bee0ec8e /Plugins/DbSqliteWx/dbsqlitewxinstance.cpp | |
| parent | d5caba2b1f36dc3b92fa705a06097d0597fa2ddd (diff) | |
| parent | d9aa870e5d509cc7309ab82dd102a937ab58613a (diff) | |
Merge tag 'upstream/3.1.1+dfsg1'
Upstream version 3.1.1+dfsg1
# gpg: Signature made Thu 09 Feb 2017 04:37:24 AM EST
# gpg: using RSA key 5001E1B09AA3744B
# gpg: issuer "unit193@ubuntu.com"
# gpg: Good signature from "Unit 193 <unit193@ubuntu.com>" [unknown]
# gpg: aka "Unit 193 <unit193@gmail.com>" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg: There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 8DB3 E586 865D 2B4A 2B18 5A5C 5001 E1B0 9AA3 744B
Diffstat (limited to 'Plugins/DbSqliteWx/dbsqlitewxinstance.cpp')
| -rw-r--r-- | Plugins/DbSqliteWx/dbsqlitewxinstance.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/Plugins/DbSqliteWx/dbsqlitewxinstance.cpp b/Plugins/DbSqliteWx/dbsqlitewxinstance.cpp new file mode 100644 index 0000000..ff5488e --- /dev/null +++ b/Plugins/DbSqliteWx/dbsqlitewxinstance.cpp @@ -0,0 +1,31 @@ +#include "dbsqlitewxinstance.h"
+#include "dbsqlitewx.h"
+
+DbSqliteWxInstance::DbSqliteWxInstance(const QString& name, const QString& path, const QHash<QString, QVariant>& connOptions) :
+ AbstractDb3<WxSQLite>(name, path, connOptions)
+{
+}
+
+void DbSqliteWxInstance::initAfterOpen()
+{
+ SqlQueryPtr res;
+
+ QString key = connOptions[DbSqliteWx::PASSWORD_OPT].toString();
+ if (!key.isEmpty())
+ {
+ res = exec(QString("PRAGMA key = '%1';").arg(key), Flag::NO_LOCK);
+ if (res->isError())
+ qWarning() << "Error while defining WxSqlite3 key:" << res->getErrorText();
+ }
+
+ AbstractDb3<WxSQLite>::initAfterOpen();
+}
+
+QString DbSqliteWxInstance::getAttachSql(Db *otherDb, const QString &generatedAttachName)
+{
+ QString pass = "";
+ if (otherDb->getConnectionOptions().contains(DbSqliteWx::PASSWORD_OPT))
+ pass = otherDb->getConnectionOptions()[DbSqliteWx::PASSWORD_OPT].toString().replace("'", "''");
+
+ return QString("ATTACH '%1' AS %2 KEY '%3';").arg(otherDb->getPath(), generatedAttachName, pass);
+}
|
