From 19fcc5b826414b9d6e43d6de6457540bf538d72b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luis=20=C3=81ngel=20San=20Mart=C3=ADn?= Date: Mon, 5 Aug 2013 19:51:19 +0200 Subject: [PATCH] fixed update to 7.0 version code --- YACReaderLibrary/db/data_base_management.cpp | 35 +++++++++++--------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/YACReaderLibrary/db/data_base_management.cpp b/YACReaderLibrary/db/data_base_management.cpp index de68378e..2d788e39 100644 --- a/YACReaderLibrary/db/data_base_management.cpp +++ b/YACReaderLibrary/db/data_base_management.cpp @@ -566,24 +566,27 @@ bool DataBaseManagement::updateToCurrentVersion(const QString & fullPath) if(returnValue) //TODO: execute only if previous version was < 7.0 { //new 7.0 fields - QSqlQuery alterTableComicInfo(db); - alterTableComicInfo.prepare("ALTER TABLE comic_info ADD (" - "hasBeenOpened BOOLEAN DEFAULT 0," - "rating INTEGER DEFAULT 0," - "currentPage INTEGER DEFAULT 1, " - "bookmark1 INTEGER DEFAULT -1, " - "bookmark2 INTEGER DEFAULT -1, " - "bookmark3 INTEGER DEFAULT -1, " - "brightness INTEGER DEFAULT -1, " - "contrast INTEGER DEFAULT -1, " - "gamma INTEGER DEFAULT -1 " - ")"); - alterTableComicInfo.exec(); - - returnValue = (alterTableComicInfo.numRowsAffected() > 0); + QStringList columnDefs; + columnDefs << "hasBeenOpened BOOLEAN DEFAULT 0" + << "rating INTEGER DEFAULT 0" + << "currentPage INTEGER DEFAULT 1" + << "bookmark1 INTEGER DEFAULT -1" + << "bookmark2 INTEGER DEFAULT -1" + << "bookmark3 INTEGER DEFAULT -1" + << "brightness INTEGER DEFAULT -1" + << "contrast INTEGER DEFAULT -1" + << "gamma INTEGER DEFAULT -1"; + QString sql = "ALTER TABLE comic_info ADD COLUMN %1"; + foreach(QString columnDef, columnDefs) + { + QSqlQuery alterTableComicInfo(db); + alterTableComicInfo.prepare(sql.arg(columnDef)); + //alterTableComicInfo.bindValue(":column_def",columnDef); + alterTableComicInfo.exec(); + returnValue = returnValue && (alterTableComicInfo.numRowsAffected() > 0); + } } //TODO update hasBeenOpened value - } db.close();