Differences between revisions 3 and 4
Revision 3 as of 2007-01-16 16:00:54
Size: 4655
Editor: swordsp
Comment:
Revision 4 as of 2009-12-25 07:08:59
Size: 4713
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
'''Python 数据库接口模块'''::-- ["swordsp"] [[[DateTime(2007-01-16T13:36:01Z)]]] [[TableOfContents]] '''Python 数据库接口模块'''::-- [[swordsp]] [<<DateTime(2007-01-16T13:36:01Z)>>] <<TableOfContents>>
Line 7: Line 7:
 * 更广泛的 Python 数据库技术参见 [:Py4Database:Python 数据库开发概要]  * 更广泛的 Python 数据库技术参见 [[Py4Database|Python 数据库开发概要]]
Line 11: Line 11:
 * [http://www.mysql.com/ MySQL] -- 最流行的开源数据库
 * [http://sourceforge.net/projects/mysql-python MySQL-Python] -- MySQL 的 Python 接口
 * [[http://www.mysql.com/|MySQL]] -- 最流行的开源数据库
 * [[http://sourceforge.net/projects/mysql-python|MySQL-Python]] -- MySQL 的 Python 接口
Line 15: Line 15:
 * [http://sqlite.org/ SQLite] -- 小巧轻便的嵌入式数据库
 * [http://pysqlite.org/ pysqlite] -- SQLite 的半官方性质 Python 接口,Python 2.5 之后已成为标准库 sqlite3
  * [:pySqlite:pysqlite文档资料收集]
 * [[http://sqlite.org/|SQLite]] -- 小巧轻便的嵌入式数据库
 * [[http://pysqlite.org/|pysqlite]] -- SQLite 的半官方性质 Python 接口,Python 2.5 之后已成为标准库 sqlite3
  * [[pySqlite|pysqlite文档资料收集]]
Line 19: Line 19:
 * [http://www.postgresql.org/ PostgreSQL] -- 比 MySQL 功能更强大、历史更悠久的开源数据库
  * [http://www.pgsqldb.org/ PostgreSQL中文网]
 * [http://www.pygresql.org/ PyGreSQL] -- 历史最悠久,最流行的 PostgreSQL 接口
 * [http://initd.org/projects/psycopg2 psycopg2] -- 特别为高并发环境设计的 PostgreSQL 驱动
 * [http://pypgsql.sourceforge.net/ pyPgSQL] -- Python世界里的另一个 PostgreSQL 接口
 * [[http://www.postgresql.org/|PostgreSQL]] -- 比 MySQL 功能更强大、历史更悠久的开源数据库
  * [[http://www.pgsqldb.org/|PostgreSQL中文网]]
 * [[http://www.pygresql.org/|PyGreSQL]] -- 历史最悠久,最流行的 PostgreSQL 接口
 * [[http://initd.org/projects/psycopg2|psycopg2]] -- 特别为高并发环境设计的 PostgreSQL 驱动
 * [[http://pypgsql.sourceforge.net/|pyPgSQL]] -- Python世界里的另一个 PostgreSQL 接口
Line 25: Line 25:
 * [http://www.oracle.com/ Oracle] -- 数据库领域中的巨鳄,最为强大先进的商业数据库产品
 * [http://www.zope.org/Members/matt/dco2 DCOracle2] -- Zope 出品的 Oracle 驱动
 * [http://www.cxtools.net/default.aspx?nav=cxorlb cx_Oracle] -- 另一个 Oracle 接口模块
 * [[http://www.oracle.com/|Oracle]] -- 数据库领域中的巨鳄,最为强大先进的商业数据库产品
 * [[http://www.zope.org/Members/matt/dco2|DCOracle2]] -- Zope 出品的 Oracle 驱动
 * [[http://www.cxtools.net/default.aspx?nav=cxorlb|cx_Oracle]] -- 另一个 Oracle 接口模块
Line 29: Line 29:
 * [http://sourceforge.net/projects/pydb2 pydb2] -- DB2 的 Python 接口,此外还包括了若干小工具  * [[http://sourceforge.net/projects/pydb2|pydb2]] -- DB2 的 Python 接口,此外还包括了若干小工具
Line 31: Line 31:
 * [http://www.sapdb.org/sapdbapi.html sapdbapi] -- SAP DB 的 Python 接口  * [[http://www.sapdb.org/sapdbapi.html|sapdbapi]] -- SAP DB 的 Python 接口
Line 33: Line 33:
 * [http://sourceforge.net/projects/informixdb/ informixdb]  * [[http://sourceforge.net/projects/informixdb/|informixdb]]
Line 35: Line 35:
 * [http://kinterbasdb.sourceforge.net/ kinterbasdb] -- Interbase 4.0 和 5.0 的 Python接口  * [[http://kinterbasdb.sourceforge.net/|kinterbasdb]] -- Interbase 4.0 和 5.0 的 Python接口
Line 37: Line 37:
 * [http://www.informatik.uni-rostock.de/~hme/software/ ingmod]  * [[http://www.informatik.uni-rostock.de/~hme/software/|ingmod]]
Line 39: Line 39:
 * [http://www.object-craft.com.au/projects/sybase/ Sybase module for Python] -- Sybase 的 DB-API 2.0 接口  * [[http://www.object-craft.com.au/projects/sybase/|Sybase module for Python]] -- Sybase 的 DB-API 2.0 接口
Line 41: Line 41:
 * [http://pymssql.sourceforge.net/ MicroSoft SQL Server module for Python] -- SQLServer 的 DB-API 2.0 接口  * [[http://pymssql.sourceforge.net/|MicroSoft SQL Server module for Python]] -- SQLServer 的 DB-API 2.0 接口
Line 46: Line 46:
 * 在Windows平台下使用MS SQL DB-Library, 在Linux等平台使用[http://www.freetds.org/ Freetds]连接SQL Server.
 * 目前常见的一些问题: 不支持SQL Server的ntext数据类型,请把ntext类型的字段修改为nvarchar.[http://pymssql.sourceforge.net/troubleshooting.html#unicode --nEO]
 * 在Windows平台下使用MS SQL DB-Library, 在Linux等平台使用[[http://www.freetds.org/|Freetds]]连接SQL Server.
 * 目前常见的一些问题: 不支持SQL Server的ntext数据类型,请把ntext类型的字段修改为nvarchar.[[http://pymssql.sourceforge.net/troubleshooting.html#unicode|--nEO]]
Line 49: Line 49:
 * [http://www.thinksql.co.uk/ ThinkSQL] -- 一个内置了Python接口的商业数据库产品  * [[http://www.thinksql.co.uk/|ThinkSQL]] -- 一个内置了Python接口的商业数据库产品
Line 51: Line 51:
 * [http://www.matisse.com/product_information/language_bindings/lang_python.html Matisse] -- 商业数据库产品Matisse,内置 Python 绑定支持,非 DB-API兼容。  * [[http://www.matisse.com/product_information/language_bindings/lang_python.html|Matisse]] -- 商业数据库产品Matisse,内置 Python 绑定支持,非 DB-API兼容。
Line 54: Line 54:
 * [http://www.egenix.com/files/python/mxODBC.html mxODBC] -- 流行的 mx 系列工具包中的一部分,也是其中唯一的商业产品(用于非商业开发不需付费)。实现了绝大部分 DB-API 2.0 接口。
 * [http://pyodbc.sourceforge.net/ pyodbc] -- 开源的 Python ODBC 接口,完整实现了 DB-API 2.0 接口
 * ODBC Interface -- 随 [http://sourceforge.net/projects/pywin32/ PythonWin] 附带发行的模块,文档和维护缺乏
 * [[http://www.egenix.com/files/python/mxODBC.html|mxODBC]] -- 流行的 mx 系列工具包中的一部分,也是其中唯一的商业产品(用于非商业开发不需付费)。实现了绝大部分 DB-API 2.0 接口。
 * [[http://pyodbc.sourceforge.net/|pyodbc]] -- 开源的 Python ODBC 接口,完整实现了 DB-API 2.0 接口
 * ODBC Interface -- 随 [[http://sourceforge.net/projects/pywin32/|PythonWin]] 附带发行的模块,文档和维护缺乏
Line 58: Line 58:
 * [http://www.ziclix.com/zxjdbc/ zxJDBC] -- 专为 Jython 设计的 DB-API 2.0 接口,建立在底层的 JDBC 接口之上。已经包含在 Jython 2.1 以后的发行版中。  * [[http://www.ziclix.com/zxjdbc/|zxJDBC]] -- 专为 Jython 设计的 DB-API 2.0 接口,建立在底层的 JDBC 接口之上。已经包含在 Jython 2.1 以后的发行版中。
Line 60: Line 60:
 * [http://sqlrelay.sourceforge.net/ SQLRelay] -- Unix 环境下的通用数据库连接池,支持多种数据库和编程语言,提供了自己的 Python 接口,非 DB-API 兼容。  * [[http://sqlrelay.sourceforge.net/|SQLRelay]] -- Unix 环境下的通用数据库连接池,支持多种数据库和编程语言,提供了自己的 Python 接口,非 DB-API 兼容。
Line 63: Line 63:
 * ["Gadfly"] 是 Python 实现的一个轻型 in-memory 关系数据库,本身即提供 DB-API 兼容的访问接口。  * [[Gadfly]] 是 Python 实现的一个轻型 in-memory 关系数据库,本身即提供 DB-API 兼容的访问接口。

Python 数据库接口模块::-- swordsp [2007-01-16 13:36:01]

  • 本条目收集了 Python 中的常用数据库接口模块,包括各种主流关系数据库和一些通用接口
  • 如无特别注明,均实现(或部分实现)了 DB-API 标准。
  • 更广泛的 Python 数据库技术参见 Python 数据库开发概要

专用数据库连接模块

MySQL

SQLite

PostgreSQL

  • PostgreSQL -- 比 MySQL 功能更强大、历史更悠久的开源数据库

  • PyGreSQL -- 历史最悠久,最流行的 PostgreSQL 接口

  • psycopg2 -- 特别为高并发环境设计的 PostgreSQL 驱动

  • pyPgSQL -- Python世界里的另一个 PostgreSQL 接口

Oracle

  • Oracle -- 数据库领域中的巨鳄,最为强大先进的商业数据库产品

  • DCOracle2 -- Zope 出品的 Oracle 驱动

  • cx_Oracle -- 另一个 Oracle 接口模块

IBM DB2

  • pydb2 -- DB2 的 Python 接口,此外还包括了若干小工具

SAP DB

Infomix

Interbase

Ingres

Sybase

SQL Server

  • MicroSoft SQL Server module for Python -- SQLServer 的 DB-API 2.0 接口

  • pymssql 0.7.1 已经在 FreeBSD 5.4, 6.0, NetBSD 2.0.2, Linux with kernel 2.6, Solaris 10/x86, Mac OS X, Windows XP等多种平台上测试通过.
  • pymssql 0.7.4 经测试支持 SQL Server 2000, all service pack levels. pymssql 0.7.4 on Windows 经测试支持 SQL Server 2000 RTM, SP3a and SP4,SQL Server 2005 RTM.
  • 其他版本的SQL Server也可能被支持.
  • 在Windows平台下使用MS SQL DB-Library, 在Linux等平台使用Freetds连接SQL Server.

  • 目前常见的一些问题: 不支持SQL Server的ntext数据类型,请把ntext类型的字段修改为nvarchar.--nEO

ThinkSQL

  • ThinkSQL -- 一个内置了Python接口的商业数据库产品

Matisse

  • Matisse -- 商业数据库产品Matisse,内置 Python 绑定支持,非 DB-API兼容。

通用数据库接口模块

ODBC

  • mxODBC -- 流行的 mx 系列工具包中的一部分,也是其中唯一的商业产品(用于非商业开发不需付费)。实现了绝大部分 DB-API 2.0 接口。

  • pyodbc -- 开源的 Python ODBC 接口,完整实现了 DB-API 2.0 接口

  • ODBC Interface -- 随 PythonWin 附带发行的模块,文档和维护缺乏

JDBC

  • zxJDBC -- 专为 Jython 设计的 DB-API 2.0 接口,建立在底层的 JDBC 接口之上。已经包含在 Jython 2.1 以后的发行版中。

SQLRelay

  • SQLRelay -- Unix 环境下的通用数据库连接池,支持多种数据库和编程语言,提供了自己的 Python 接口,非 DB-API 兼容。

其它模块

Gadfly

  • Gadfly 是 Python 实现的一个轻型 in-memory 关系数据库,本身即提供 DB-API 兼容的访问接口。

DatabaseModules (last edited 2009-12-25 07:08:59 by localhost)