# HG changeset patch # User Tom Fredrik Blenning Klaussen # Date 1382365238 -7200 # Node ID 7b7a959c993b830a4a5c75b82fecef13a154f160 # Parent cfd2a417475a46f3c35b93204dcc6566dadad01c Prepare some more queries. diff -r cfd2a417475a -r 7b7a959c993b SqliteDBLink.cpp --- a/SqliteDBLink.cpp Mon Oct 21 16:19:23 2013 +0200 +++ b/SqliteDBLink.cpp Mon Oct 21 16:20:38 2013 +0200 @@ -41,6 +41,10 @@ preparedSizeQuery = new QSqlQuery(db); preparedSizeQuery->prepare("SELECT * FROM files WHERE size = :size"); + preparedTryAddQuery = new QSqlQuery(db); + preparedTryAddQuery->prepare("INSERT INTO files (path, size, mtime, checksum)" + " VALUES (:path, :size, :mtime, :checksum)"); + } SqliteDBLink::~SqliteDBLink() @@ -90,15 +94,12 @@ { if (exists(dbinfo.path())) return false; - QSqlQuery query(db); - query.prepare("INSERT INTO files (path, size, mtime, checksum) " - "VALUES (:path, :size, :mtime, :checksum)"); - query.bindValue(":path", dbinfo.path()); - query.bindValue(":size", dbinfo.size()); - query.bindValue(":mtime", dbinfo.mtime()); - query.bindValue(":checksum", dbinfo.checksum()); - if (!query.exec()) { - throw SQLException(query); + preparedTryAddQuery->bindValue(":path", dbinfo.path()); + preparedTryAddQuery->bindValue(":size", dbinfo.size()); + preparedTryAddQuery->bindValue(":mtime", dbinfo.mtime()); + preparedTryAddQuery->bindValue(":checksum", dbinfo.checksum()); + if (!preparedTryAddQuery->exec()) { + throw SQLException(*preparedTryAddQuery); } return true; } diff -r cfd2a417475a -r 7b7a959c993b SqliteDBLink.hpp --- a/SqliteDBLink.hpp Mon Oct 21 16:19:23 2013 +0200 +++ b/SqliteDBLink.hpp Mon Oct 21 16:20:38 2013 +0200 @@ -35,6 +35,7 @@ QSqlQuery* preparedSizePrefixQuery; QSqlQuery* preparedSizeQuery; + QSqlQuery* preparedTryAddQuery; }; #endif //MEMORYDBLINK_HPP