Как настроить FTS3/FTS4 с python2.7 на Windows

FTS3/FTS4 по умолчанию не работает в python (до 2.7). Я получаю ошибку:

 sqlite3.OperationalError: нет такого модуля: fts3 
или же

 sqlite3.OperationalError: нет такого модуля: fts4 

Как это можно решить?

4 ответа

Решение
  1. Скачать последнюю версию DLL DLL.

  2. Замените sqlite.dll в вашей папке python/dll.

Не берите в голову.
установка pysqlite из исходного кода была простой и достаточной.

 python setup.py build_static install 
fts3 включен по умолчанию при установке из источника.

Мой ответ не связан с Python 2.7. Но надеюсь, что это станет полезным для пользователей, использующих Python 3.5. Я использовал функцию полнотекстового поиска sqlite. Однако, когда я пытался вставить в виртуальную таблицу FTS3

def insertdata(conn, parmvlu):

    sql = ''' INSERT INTO slangs(slang,polarity)
              VALUES(?,?) '''
    cur = conn.cursor()
    cur.execute(sql, parmvlu)
    return cur.lastrowid

Я получил ошибку -

sqlite3.OperationalError: no such module: fts3

Точно так же ошибка приходила для виртуальных таблиц FTS4. Пользуясь подсказкой с сайта, я скачал и скопировал предварительно скомпилированные бинарные файлы sqlite для Windows в мою директорию Python DLL (я сделал резервную копию оригинального sqlite.dll). Мое приложение Python начало работать нормально.

Что сказал Навин, но =>

Для установок Windows:

При запуске setup.py для установки пакетов... Python 2.7 ищет установленную Visual Studio 2008. Вы можете обмануть Python, чтобы использовать Visual Studio, установив

SET VS90COMNTOOLS=%VS100COMNTOOLS%

перед вызовом setup.py.

Другие вопросы по тегам