Procházet zdrojové kódy

Fixed buggy SQL statement and query code.

Sascha Zelzer před 13 roky
rodič
revize
3d73e052ee
1 změnil soubory, kde provedl 2 přidání a 3 odebrání
  1. 2 3
      Libs/PluginFramework/ctkPluginStorageSQL.cpp

+ 2 - 3
Libs/PluginFramework/ctkPluginStorageSQL.cpp

@@ -202,7 +202,7 @@ void ctkPluginStorageSQL::initNextFreeIds()
 
   statement = "SELECT MAX(ID) FROM " PLUGINS_TABLE;
   executeQuery(&query, statement);
-  QVariant id = query.isValid() ? query.value(EBindIndex) : QVariant();
+  QVariant id = query.next() ? query.value(EBindIndex) : QVariant();
   if (id.isValid())
   {
     m_nextFreeId = id.toInt() + 1;
@@ -303,11 +303,10 @@ void ctkPluginStorageSQL::updateDB()
 
   if (!outdatedIds.isEmpty())
   {
-
     // 3. Remove all traces from outdated plug-in data. Due to cascaded delete,
     //    it is sufficient to remove the records from the main table
 
-    statement = "DELETE FROM " PLUGINS_TABLE " WHERE K IN (%1)";
+    statement = "DELETE FROM " PLUGINS_TABLE " WHERE ID IN (%1)";
     QString idStr;
     foreach(int id, outdatedIds)
     {