https://bugs.kde.org/show_bug.cgi?id=526935
--- Comment #7 from [email protected] --- No. This is not a sign of database corruption. In comment 6, the command returns: >$ sqlite3 digikam4.db "PRAGMA integrity_check" >Error: in prepare, unable to open database file (14) This is SQLite error code 14 (SQLITE_CANTOPEN): sqlite3 cannot even open the file, which means the integrity check never actually ran. A genuinely corrupted database would open and instead return errors such as database disk image is malformed, or *** in database main *** lines from PRAGMA integrity_check. This is also consistent with the log in the initial report: QSqlError("14", "Unable to execute statement", "unable to open database file"). So the problem is upstream, at the file/filesystem level: * Wrong path: the user may not be in the correct directory, or the database may have a different name (please check with ls -l, and possibly use the full path /run/media/avalanche/Seagate/DigiKam25/digikam4.db). * Insufficient permissions: the external USB disk may be mounted without write access (typically an NTFS/exFAT partition mounted with the wrong uid, or mounted read-only). *Missing/broken mount: please check mount | grep Seagate and the mount options. Note that digiKam's message ("privileges are not assigned to you: CREATE TABLE") is misleading: it's the generic error shown when schema initialization fails. Here most likely because the database file sits on an external drive that is not properly mounted or not writeable, not because the database is corrupt or because SQL privileges are actually missing. Next steps: please attach the output of ls -l on the database file and of mount for the external drive, then re-run sqlite3 with the full path once the drive is mounted read-write. Best regards Gilles Caulier -- You are receiving this mail because: You are watching all bug changes.
