python - 使用 python 2.7.3 和 pysqlite2 2.6.3 升级 sqlite3 版本

标签 python windows sqlite

美好的一天。

最近在学习python和sqlite,安装最新版的sqlite3(3.7.14.1)遇到了问题。我在 Windows 7 中使用 python 2.7.3,并使用 Windows 安装程序安装了最新的 pysqlite2 版本 (2.6.3)。我使用以下代码导入 pysqlite 并检查版本,结果如​​下:

>>> from pysqlite2 import dbapi2 as sqlite3
>>> sqlite3.version
'2.6.3'
>>> sqlite3.sqlite_version
'3.7.6.2'

根据上面的代码,使用的sqlite3版本是旧版本。我已经下载了最新的 sqlite3.dll 并覆盖了 Python27\DLLs\目录中的那个。但是当我运行 sqlite3.sqlite_version 时,它仍然给我旧版本。但是,当使用默认的 python sqlite3 模块时,它会显示该模块的旧版本 (2.6.0) 和我刚刚复制的最新版本的 sqlite3.dll。见下面的代码:

>>> import sqlite3
>>> sqlite3.version
'2.6.0'
>>> sqlite3.sqlite_version
'3.7.14.1'

我的问题是,如何升级 pysqlite2 2.6.3 的 sqlite3 3.7.14.1?谁能帮帮我?

谢谢。

最佳答案

您可能从 here 获得的 pysqlite2 安装程序包含编译成 _sqlite.pydsqlite3,它不使用在 DLLs 目录中找到的 dll(那个只被 sqlite3 使用模块)。

所以如果你想升级使用的sqlite版本,你将不得不自己重新编译pysqlite2

或者,由于 pysqlite2 实际上与 sqlite3 相同,您也可以用文件 pysqlite2.py 替换完整的包,仅包含:

from sqlite3 import *

关于python - 使用 python 2.7.3 和 pysqlite2 2.6.3 升级 sqlite3 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13249211/

相关文章:

python - 在圆内寻找轮廓

python - 什么是面向对象编程的计算开销成本?

c++ - 如何通过 Outlook 扩展 Windows 桌面搜索

windows - 如何以编程方式获取 Windows XP 上的事件 ipv6 连接列表

python - 以控制台格式 pyspark 写入流时出错

json - cURL 错误 - 无法发送 -d 的文本值

python - 我不能再从数据库中提取对象

ios - Swift 中没有像 Sqlite 这样的模块

iphone - 在 iPhone 中集成 sqlite

python - 使用 Tweepy 访问 twitter API 时出错