У меня уже давно есть эта проблема, и вот краткий рассказ:
Я хочу отредактировать дату в моей базе данных Sqlite
с помощью скрипта Python
, поэтому я делаю это с помощью:
import sqlite3
db = sqlite3.connect('test.db')
cursor = db.cursor()
cursor.execute("UPDATE info SET date = '2003-03-14 12:34:20' WHERE id = 10")
но когда я выполняю это, я получаю исключение:
sqlite3.OperationalError: no such module: fts4
с некоторыми неполадками, мне удалось сузить их до некоторых проблем с кавычками. Поскольку даже если я просто уменьшу его до одного года, он все равно выдаст исключение.
То же исключение появляется, если я пытаюсь вставить строку, используя кавычки.
Как я могу это исправить? Большинство решений, которые я нахожу, решается, хотя при сборке включается fts3/fts4
с флагом SQLITE_ENABLE_FTS3
, но я понятия не имею, как это сделать.
Кроме того, один и тот же код работает ровно как в Python 3.6.5
, так и в 2.7.12
. что произошло в Python3
? или, более конкретно, 3.5.2
.
Я должен добавить, что он работает в Linux, но не в Windows.