После проверки некоторых связанных постов с помощью SQlite3 и того, как включить расширения, я обнаружил, что не отвечаю на свои вопросы и, отчаянно, прошу вас, ребята, здесь.
Я использую Python 3.7 в конкретная c среда pipenv (я думаю, что это среда venv). Python путь в env: / home / my_user / .local / share / virtualenvs / my_current_env / lib / python3 .7
Код:
with sqlite3.connect(":memory:") as conn:
conn.enable_load_extension(True)
conn.load_extension("mod_spatialite.so")
Ошибка:
AttributeError: у объекта 'sqlite3.Connection' нет атрибута 'enable_load_extension'
Решения, которые я пробовал до сих пор:
(i) Go для основной установки Py37 и измените файл setup.py и замените его: SQLITE_OMIT_LOAD_EXTENSION для SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION Я не смог найти файл setup.py в среде pipenv Python путь ... не сделал t работа
(ii) Попробуйте сгенерировать курсор из SQlite и из курсора, выполнив расширение:
cursor=conn.cursor()
res=cursor.execute("SELECT sqlite_compileoption_used('ENABLE_LOAD_EXTENSION');", "mod_spatialite.so")
res.fetchall()
Также не сработало: Ошибка:
ProgrammingError: указано неверное количество привязок. В текущем операторе используется 0, а поставлено 17.
Я новичок в SQlite и довольно плохо в Python, моя цель - активировать базу данных с помощью Spatialite. Пожалуйста, ваша помощь будет высоко ценится.
Лучший и много здоровья, Joueswant