Проблема с использованием sqlcipher, возвращена ошибка: «файл не является базой данных» - PullRequest
0 голосов
/ 28 мая 2020

Приносим извинения, если решение зарыто где-то в другой ветке или посте. Я не смог найти ничего конкретного c по этому поводу. Я получаю [Ошибка: файл не является базой данных].

Мой сценарий:

  • sqlcipher загружен в установку PopOS. (3.15.2 // sqlcipher --version)
  • Успешно создал новую зашифрованную базу данных. Мог открыть, закрыть и увидеть результаты.
  • Загрузил эту базу данных f ie в MacOS (Catalina). (3.31.0 // sqlcipher --version)
  • Я открыл базу данных и ввел оператор «PRAGMA key» в качестве первого ввода. (Подтверждение: «ОК».) Однако все, что я делаю после этого, приводит к [Ошибка: файл не является базой данных].

Это разные версии, которые вызывают проблему?

1 Ответ

0 голосов
/ 29 мая 2020

Также разместил вышеуказанный вопрос по следующей ссылке: https://discuss.zetetic.net/t/error-file-is-not-a-database/4434 (скопировал ответ ниже)

"Это сообщение форума обсуждения должно указать вам на правильный направление: Обновление до SQLCipher 4 1 (https://discuss.zetetic.net/t/upgrading-to-sqlcipher-4/3283). Похоже, ваша база данных была создана с использованием SQLCipher v3, и вы пытаетесь открыть ее с помощью SQLCipher v4. Чтобы проверить это предположение, вы можете запустите PRAGMA cipher_version на каждой стороне. "

Вышеупомянутое было полезно для преобразования зашифрованного файла 3.4 в версию 4.x. Однако для обновления моей установки Linux до 4.x эти инструкции были очень полезны: https://github.com/sqlitebrowser/sqlitebrowser/wiki/SQLCipher: - Build-from-Source-on-Debian-Stretch --- Newb ie -Instructions

...