Python pysqlite2 dbapi2 问题

1 投票
2 回答
1700 浏览
提问于 2025-04-15 15:28

我在这行代码上遇到了问题:

from pysqlite2 import dbapi2 as sqlite

我收到的错误信息是:

ImportError: /usr/lib/python2.4/site-packages/pysqlite2/_sqlite.so: undefined symbol: sqlite3_enable_shared_cache

我该怎么做才能解决这个问题呢?

谢谢!

2 个回答

0

解决这个问题最简单的方法是从Activestate网站下载AS包的Python 2.6或更高版本并进行安装。这个包里自带了SQLITE,放在标准库里。

AS包是一个压缩文件,你解压后运行一个脚本,就可以在用户目录下安装它。这样做不会影响你系统里已经安装的Python版本,而且你可以得到一个完全可控的Python环境,这个环境在其他系统上也很容易复制,不管你用的是什么Linux版本。

Python的打包系统和Linux的发行版包系统不太兼容,特别是因为很多Linux发行版的版本可能会比较旧。

2

听起来像是 _sqlite.so 这个文件是用比你现在安装的 SQLite 更新的版本编译的。那个功能直到 3.5.0 版本 才被加入到 SQLite 的接口里。

撰写回答