Browse Source

Fix db query for sqlite 3.9.2

Neeraj Gupta 3 years ago
parent
commit
2eaabf31cc
1 changed files with 11 additions and 11 deletions
  1. 11 11
      lib/db/files_db.dart

+ 11 - 11
lib/db/files_db.dart

@@ -256,17 +256,17 @@ class FilesDB {
   static List<String> addUniqueConstraintOnCollectionFiles() {
     return [
       '''
-      DELETE from $table where ($columnCollectionID, $columnUploadedFileID) IN 
-      (SELECT $columnCollectionID, $columnUploadedFileID from $table WHERE 
-        $columnCollectionID is not NULL AND $columnUploadedFileID is NOT NULL
-        AND $columnCollectionID != -1 AND $columnUploadedFileID  != -1
-        GROUP BY $columnCollectionID, $columnUploadedFileID HAVING count(*) > 1)
-      AND  ($columnCollectionID, $columnUploadedFileID,$columnGeneratedID) NOT IN 
-      (SELECT $columnCollectionID, $columnUploadedFileID, max($columnGeneratedID)
-       from $table WHERE 
-       $columnCollectionID is not NULL AND $columnUploadedFileID is NOT NULL
-       AND $columnCollectionID != -1 AND $columnUploadedFileID  != -1 GROUP BY 
-       $columnCollectionID, $columnUploadedFileID HAVING count(*) > 1);
+      DELETE from $table where $columnCollectionID || '-' || $columnUploadedFileID IN 
+      (SELECT $columnCollectionID || '-' || $columnUploadedFileID from $table WHERE 
+      $columnCollectionID is not NULL AND $columnUploadedFileID is NOT NULL 
+      AND $columnCollectionID != -1 AND $columnUploadedFileID  != -1 
+      GROUP BY ($columnCollectionID || '-' || $columnUploadedFileID) HAVING count(*) > 1) 
+      AND  ($columnCollectionID || '-' ||  $columnUploadedFileID || '-' || $columnGeneratedID) NOT IN 
+      (SELECT $columnCollectionID || '-' ||  $columnUploadedFileID || '-' || max($columnGeneratedID) 
+      from $table WHERE 
+      $columnCollectionID is not NULL AND $columnUploadedFileID is NOT NULL 
+      AND $columnCollectionID != -1 AND $columnUploadedFileID  != -1 GROUP BY 
+      ($columnCollectionID || '-' || $columnUploadedFileID) HAVING count(*) > 1);
       ''',
       '''
       CREATE UNIQUE INDEX IF NOT EXISTS cid_uid ON $table ($columnCollectionID, $columnUploadedFileID)