默认情况下,FTS3 / FTS4在python中不起作用(最多2.7)。我收到错误:
sqlite3.OperationalError: no such module: fts3或
sqlite3.OperationalError: no such module: fts4
如何解决这个问题?
答案 0 :(得分:16)
下载最新的sql dll。
替换python / dll文件夹中的sqlite.dll。
答案 1 :(得分:2)
没关系。
从源代码安装pysqlite非常简单。
python setup.py build_static install从源安装时默认启用fts3。
答案 2 :(得分:0)
Naveen说了什么,但是=>
对于Windows安装:
为包安装运行setup.py时... Python 2.7搜索已安装的Visual Studio 2008.您可以通过设置
来欺骗Python使用Visual StudioSET VS90COMNTOOLS =%VS100COMNTOOLS%
在调用setup.py。
之前答案 3 :(得分:0)
我的回答与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虚拟表也出现了错误。从site获取提示 ,我从here下载并复制了sqlite预编译的Windows二进制文件到我的Python DLL目录(我备份了原始的sqlite.dll)。我的Python应用程序开始正常工作。