Python2.5、pysqlite与APWS中的SQLite3有什么区别

5 投票
2 回答
3423 浏览
提问于 2025-04-15 21:25

我想了解一下Python2.5中的SQLite3、pysqlite和APSW之间的区别。最近在Windows Vista上安装pysqlite时遇到了一些麻烦,具体步骤如下:

  1. 首先,从http://sqlite.org/download.html下载SQLite,并把它解压到windows/system32文件夹里,同时把SQLite3.dll放到c:/python25/Lib文件夹中。

  2. 然后,下载pysqlite的Windows安装程序

  3. 接下来,在Python命令行中尝试运行以下代码:

>>> from pysqlite2 import test
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "pysqlite2\test\__init__.py", line 35, in <module>
    from pysqlite2.test import dbapi, types, userfunctions, factory, transactions,\
  File "pysqlite2\test\dbapi.py", line 27, in <module>
    import pysqlite2.dbapi2 as sqlite
  File "pysqlite2\dbapi2.py", line 27, in <module>
    from pysqlite2._sqlite import *
ImportError: No module named _sqlite

我想知道有没有人能分享一下这三种SQLite与Python的绑定方式的优缺点,比如性能方面的表现。我在想,尝试使用pysqlite或APSW是否值得。

2 个回答

2

不过,pysqlite这个库里还有更多的修补程序。它的版本是2.6.0,而内置模块的版本是2.3.2。如果你在pysqlite的包目录下导入pysqlite2.test,可能会出现错误(我在某个地方看到过)。

关于apsw的区别,可以在这个链接上找到更好的解释:http://code.google.com/p/apsw

3

pysqlite和sqlite3是一样的(sqlite3是内置在Python 2.5的Windows安装包里的)

撰写回答