跳转到主要内容

Python的Microsoft SQL Server数据库API接口。(基于Cython的新版本)

项目描述

pymssql - Microsoft SQL Server数据库API接口

https://github.com/pymssql/pymssql/workflows/Linux/badge.svg https://github.com/pymssql/pymssql/workflows/macOS/badge.svg https://github.com/pymssql/pymssql/workflows/Windows/badge.svg http://img.shields.io/pypi/dm/pymssql.svg http://img.shields.io/pypi/v/pymssql.svg

一个简单的数据库接口,基于FreeTDS构建,提供Python DB-API (PEP-249)接口,用于连接到Microsoft SQL Server

pymssql的详细信息可在网站上找到

pymssql.readthedocs.io

新开发正在GitHub上发生

github.com/pymssql/pymssql

有一个用于讨论的Google组

groups.google.com

入门

pymssql wheels可在PyPi上找到。要安装它,运行

pip install -U pip
pip install pymssql

大多数时候,这应该就足够了。官方pymssql wheels捆绑了FreeTDS的静态副本,并支持SSL,因此可以用于连接到Azure。

基本示例

conn = pymssql.connect(server, user, password, "tempdb")
cursor = conn.cursor(as_dict=True)

cursor.execute('SELECT * FROM persons WHERE salesrep=%s', 'John Doe')
for row in cursor:
    print("ID=%d, Name=%s" % (row['id'], row['name']))

conn.close()

最近更改

版本 2.3.1 - 2024年 - Mikhail Terekhov

一般

  • 修复SP返回NULL(关闭#441)。

  • 将FreeTDS更新到1.4.22(关闭#895)。

  • 要求Cython>3.0.10。

  • 添加python 3.13 Linux wheels(关闭#900)。

  • 删除manylinux2010 wheels。

  • 删除MacOS上的3.7和3.8 wheels。

  • 删除Linux上的3.6 wheels。

版本 2.3.0 - 2024-04-06 - Mikhail Terekhov

一般

  • 添加python 3.12支持(修复#851)。感谢Raphael Jacob。

  • 更新FreeTDS到1.4.10。

  • 为连接添加read_only参数。

  • 为连接添加加密参数。

  • 为连接添加use_datetime2参数。

  • 使用utf-8作为连接属性。

  • 根据可选的batch_size参数在executemany中实现批处理。默认等于arraysize游标属性(关闭#332,#462)。

  • 构建aarch64 wheels。感谢Jun Tang。

  • 构建musllinux wheels。

  • 一些文档修复。感谢Casey Korver和Quentin LEGAY。

  • FAQ更新:#877。

  • 添加stubs(关闭#767)。

  • 修复DBAPI-2.0合规性 - DataError必须是DatabaseError的子类。

  • 修复DBAPI-2.0合规性:将游标属性batchsize重命名为arraysize

  • 实现存储过程的DATETIMEOFFSET处理。

  • 实现插入和选择查询的DATETIMEOFFSET处理(修复#649)。

  • 从SQLDATETIM4、SQLDATETIME、SQLDATETIME2列中选择时返回datetime.datetime实例(关闭#662,#695,#792,#844)。

错误修复

  • 修复convert_python_value()中的SQLDATETIME2处理。

  • 在SP参数绑定中使用四位数字的年份(修复#454)。

  • 修复convert_python_value以支持datetime.date。感谢Testsr。

  • 如果检查clock_gettime失败,则检查C编译器是否已安装(修复#825)。

  • 在调用ensure_bytes时在_substitute_params方法中添加缺少的charset参数(修复#650)。感谢Andrey Yuroshev。

  • 修复空、零或None参数替换。(修复#609)。

内部

  • 添加使用SP的fetchall()、fetchmany()、fetchone()和next()的测试。

  • 添加对#134的测试。

  • 要求Cython>3.0.7。

  • 使用Cython 3进行编译。

  • 使用MSSQL2019的docker镜像作为测试的默认值。

  • 从pyproject.toml中获取PyPI wheels的FreeTDS版本。

  • 使用twine检查sdist。

  • 为Windows x86 wheels使用OpenSSL-1.1.1.2100。感谢PrimozGodec(修复#839)。

  • 为Windows x64 wheels使用OpenSSL-3.1.1(FreeTDS构建失败于OpenSSL-3.2.1)。

  • 将SQLTIME和SQLDATETIME2添加到convert_python_value。

  • 使用dbanydatecrack()函数而不是dbdatecrack()。

  • 将DEF替换为cdef enum以用于缓冲区数组大小(与Cython 3兼容)。

  • 删除对tox的引用。感谢Christoph Wegener。

  • 更新readthedocs配置。

  • 添加对wait回调中超时的测试(#305)。

  • 清理一些遗留的FreeTDS shims。

  • 添加对tds_version参数的测试。

  • 将检查clock_gettime移动到dev/ccompiler.py。

  • 删除一些Python2残留。

  • 将FreeTDS版本从工作流程文件移动到pyproject.toml。

  • 将异常移动到单独的模块。

  • 使用strftime进行日期和时间转换。

  • 简化参数引号。

  • 添加对_quote_simple_value的测试。

项目详细信息


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码发行版

pymssql-2.3.1.tar.gz (186.5 kB 查看哈希值)

上传时间 源代码

构建发行版

pymssql-2.3.1-cp313-cp313-musllinux_1_2_x86_64.whl (4.6 MB 查看哈希值)

上传时间 CPython 3.13 musllinux: musl 1.2+ x86-64

pymssql-2.3.1-cp313-cp313-musllinux_1_2_i686.whl (4.4 MB 查看哈希值)

上传时间 CPython 3.13 musllinux: musl 1.2+ i686

pymssql-2.3.1-cp313-cp313-musllinux_1_1_x86_64.whl (4.1 MB 查看哈希值)

上传时间 CPython 3.13 musllinux: musl 1.1+ x86-64

pymssql-2.3.1-cp313-cp313-musllinux_1_1_i686.whl (4.0 MB 查看哈希值)

上传时间 CPython 3.13 musllinux: musl 1.1+ i686

pymssql-2.3.1-cp313-cp313-manylinux_2_28_x86_64.whl (4.7 MB 查看哈希值)

上传时间 CPython 3.13 manylinux: glibc 2.28+ x86-64

pymssql-2.3.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.3 MB 查看哈希值)

上传时间 CPython 3.13 manylinux: glibc 2.17+ x86-64

pymssql-2.3.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (4.0 MB 查看哈希值)

上传于 CPython 3.13 manylinux: glibc 2.17+ i686

pymssql-2.3.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.0 MB 查看哈希值)

上传于 CPython 3.13 manylinux: glibc 2.17+ ARM64

pymssql-2.3.1-cp312-cp312-win_amd64.whl (2.0 MB 查看哈希值)

上传于 CPython 3.12 Windows x86-64

pymssql-2.3.1-cp312-cp312-win32.whl (1.3 MB 查看哈希值)

上传于 CPython 3.12 Windows x86

pymssql-2.3.1-cp312-cp312-musllinux_1_2_x86_64.whl (4.6 MB 查看哈希值)

上传于 CPython 3.12 musllinux: musl 1.2+ x86-64

pymssql-2.3.1-cp312-cp312-musllinux_1_2_i686.whl (4.4 MB 查看哈希值)

上传于 CPython 3.12 musllinux: musl 1.2+ i686

pymssql-2.3.1-cp312-cp312-musllinux_1_1_x86_64.whl (4.1 MB 查看哈希值)

上传于 CPython 3.12 musllinux: musl 1.1+ x86-64

pymssql-2.3.1-cp312-cp312-musllinux_1_1_i686.whl (4.0 MB 查看哈希值)

上传于 CPython 3.12 musllinux: musl 1.1+ i686

pymssql-2.3.1-cp312-cp312-manylinux_2_28_x86_64.whl (4.7 MB 查看哈希值)

上传于 CPython 3.12 manylinux: glibc 2.28+ x86-64

pymssql-2.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.4 MB 查看哈希值)

上传于 CPython 3.12 manylinux: glibc 2.17+ x86-64

pymssql-2.3.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (4.0 MB 查看哈希值)

上传于 CPython 3.12 manylinux: glibc 2.17+ i686

pymssql-2.3.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.0 MB 查看哈希值)

上传时间 CPython 3.12 manylinux: glibc 2.17+ ARM64

pymssql-2.3.1-cp312-cp312-macosx_13_0_universal2.whl (3.0 MB 查看哈希值)

上传时间 CPython 3.12 macOS 13.0+ universal2 (ARM64, x86-64)

pymssql-2.3.1-cp311-cp311-win_amd64.whl (2.0 MB 查看哈希值)

上传时间 CPython 3.11 Windows x86-64

pymssql-2.3.1-cp311-cp311-win32.whl (1.3 MB 查看哈希值)

上传时间 CPython 3.11 Windows x86

pymssql-2.3.1-cp311-cp311-musllinux_1_2_x86_64.whl (4.6 MB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.2+ x86-64

pymssql-2.3.1-cp311-cp311-musllinux_1_2_i686.whl (4.4 MB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.2+ i686

pymssql-2.3.1-cp311-cp311-musllinux_1_1_x86_64.whl (4.2 MB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.1+ x86-64

pymssql-2.3.1-cp311-cp311-musllinux_1_1_i686.whl (4.1 MB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.1+ i686

pymssql-2.3.1-cp311-cp311-manylinux_2_28_x86_64.whl (4.8 MB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.28+ x86-64

pymssql-2.3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.4 MB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ x86-64

pymssql-2.3.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (4.0 MB 查看哈希值)

上传于 CPython 3.11 manylinux: glibc 2.17+ i686

pymssql-2.3.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.0 MB 查看哈希)

上传于 CPython 3.11 manylinux: glibc 2.17+ ARM64

pymssql-2.3.1-cp311-cp311-macosx_13_0_universal2.whl (3.0 MB 查看哈希)

上传于 CPython 3.11 macOS 13.0+ universal2 (ARM64, x86-64)

pymssql-2.3.1-cp310-cp310-win_amd64.whl (2.0 MB 查看哈希)

上传于 CPython 3.10 Windows x86-64

pymssql-2.3.1-cp310-cp310-win32.whl (1.3 MB 查看哈希)

上传于 CPython 3.10 Windows x86

pymssql-2.3.1-cp310-cp310-musllinux_1_2_x86_64.whl (4.5 MB 查看哈希)

上传于 CPython 3.10 musllinux: musl 1.2+ x86-64

pymssql-2.3.1-cp310-cp310-musllinux_1_2_i686.whl (4.3 MB 查看哈希)

上传于 CPython 3.10 musllinux: musl 1.2+ i686

pymssql-2.3.1-cp310-cp310-musllinux_1_1_x86_64.whl (4.0 MB 查看哈希)

上传于 CPython 3.10 musllinux: musl 1.1+ x86-64

pymssql-2.3.1-cp310-cp310-musllinux_1_1_i686.whl (4.0 MB 查看哈希)

上传于 CPython 3.10 musllinux: musl 1.1+ i686

pymssql-2.3.1-cp310-cp310-manylinux_2_28_x86_64.whl (4.6 MB 查看哈希)

上传于 CPython 3.10 manylinux: glibc 2.28+ x86-64

pymssql-2.3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.2 MB 查看哈希)

上传于 CPython 3.10 manylinux: glibc 2.17+ x86-64

pymssql-2.3.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (3.9 MB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ i686

pymssql-2.3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.9 MB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ ARM64

pymssql-2.3.1-cp310-cp310-macosx_13_0_x86_64.whl (2.7 MB 查看哈希值)

上传时间 CPython 3.10 macOS 13.0+ x86-64

pymssql-2.3.1-cp39-cp39-win_amd64.whl (2.0 MB 查看哈希值)

上传时间 CPython 3.9 Windows x86-64

pymssql-2.3.1-cp39-cp39-win32.whl (1.3 MB 查看哈希值)

上传时间 CPython 3.9 Windows x86

pymssql-2.3.1-cp39-cp39-musllinux_1_2_x86_64.whl (4.5 MB 查看哈希值)

上传时间 CPython 3.9 musllinux: musl 1.2+ x86-64

pymssql-2.3.1-cp39-cp39-musllinux_1_2_i686.whl (4.3 MB 查看哈希值)

上传时间 CPython 3.9 musllinux: musl 1.2+ i686

pymssql-2.3.1-cp39-cp39-musllinux_1_1_x86_64.whl (4.0 MB 查看哈希值)

上传时间 CPython 3.9 musllinux: musl 1.1+ x86-64

pymssql-2.3.1-cp39-cp39-musllinux_1_1_i686.whl (4.0 MB 查看哈希值)

上传时间 CPython 3.9 musllinux: musl 1.1+ i686

pymssql-2.3.1-cp39-cp39-manylinux_2_28_x86_64.whl (4.6 MB 查看哈希值)

上传时间 CPython 3.9 manylinux: glibc 2.28+ x86-64

pymssql-2.3.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.2 MB 查看哈希值)

上传时间: CPython 3.9 manylinux: glibc 2.17+ x86-64

pymssql-2.3.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (3.9 MB 查看哈希值)

上传时间: CPython 3.9 manylinux: glibc 2.17+ i686

pymssql-2.3.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.9 MB 查看哈希值)

上传时间: CPython 3.9 manylinux: glibc 2.17+ ARM64

pymssql-2.3.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl (2.9 MB 查看哈希值)

上传时间: CPython 3.9 manylinux: glibc 2.5+ x86-64

pymssql-2.3.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl (2.8 MB 查看哈希值)

上传时间: CPython 3.9 manylinux: glibc 2.5+ i686

pymssql-2.3.1-cp39-cp39-macosx_13_0_x86_64.whl (2.7 MB 查看哈希值)

上传时间: CPython 3.9 macOS 13.0+ x86-64

pymssql-2.3.1-cp38-cp38-win_amd64.whl (2.0 MB 查看哈希值)

上传时间: CPython 3.8 Windows x86-64

pymssql-2.3.1-cp38-cp38-win32.whl (1.3 MB 查看哈希值)

上传时间: CPython 3.8 Windows x86

pymssql-2.3.1-cp38-cp38-musllinux_1_2_x86_64.whl (4.6 MB 查看哈希值)

上传时间: CPython 3.8 musllinux: musl 1.2+ x86-64

pymssql-2.3.1-cp38-cp38-musllinux_1_2_i686.whl (4.3 MB 查看哈希值)

上传时间: CPython 3.8 musllinux: musl 1.2+ i686

pymssql-2.3.1-cp38-cp38-musllinux_1_1_x86_64.whl (4.2 MB 查看哈希值)

上传于 CPython 3.8 musllinux: musl 1.1+ x86-64

pymssql-2.3.1-cp38-cp38-musllinux_1_1_i686.whl (4.2 MB 查看哈希)

上传于 CPython 3.8 musllinux: musl 1.1+ i686

pymssql-2.3.1-cp38-cp38-manylinux_2_28_x86_64.whl (4.7 MB 查看哈希)

上传于 CPython 3.8 manylinux: glibc 2.28+ x86-64

pymssql-2.3.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.3 MB 查看哈希)

上传于 CPython 3.8 manylinux: glibc 2.17+ x86-64

pymssql-2.3.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (4.0 MB 查看哈希)

上传于 CPython 3.8 manylinux: glibc 2.17+ i686

pymssql-2.3.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.0 MB 查看哈希)

上传于 CPython 3.8 manylinux: glibc 2.17+ ARM64

pymssql-2.3.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl (3.0 MB 查看哈希)

上传于 CPython 3.8 manylinux: glibc 2.5+ x86-64

pymssql-2.3.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl (2.9 MB 查看哈希)

上传于 CPython 3.8 manylinux: glibc 2.5+ i686

pymssql-2.3.1-cp37-cp37m-win_amd64.whl (2.0 MB 查看哈希)

上传于 CPython 3.7m Windows x86-64

pymssql-2.3.1-cp37-cp37m-win32.whl (1.3 MB 查看哈希)

上传于 CPython 3.7m Windows x86

pymssql-2.3.1-cp37-cp37m-musllinux_1_2_x86_64.whl (4.4 MB 查看哈希)

上传于 CPython 3.7m musllinux: musl 1.2+ x86-64

pymssql-2.3.1-cp37-cp37m-musllinux_1_2_i686.whl (4.1 MB 查看哈希)

上传于 CPython 3.7m musllinux: musl 1.2+ i686

pymssql-2.3.1-cp37-cp37m-musllinux_1_1_x86_64.whl (3.9 MB 查看哈希)

上传于 CPython 3.7m musllinux: musl 1.1+ x86-64

pymssql-2.3.1-cp37-cp37m-musllinux_1_1_i686.whl (3.8 MB 查看哈希)

上传于 CPython 3.7m musllinux: musl 1.1+ i686

pymssql-2.3.1-cp37-cp37m-manylinux_2_28_x86_64.whl (4.5 MB 查看哈希)

上传于 CPython 3.7m manylinux: glibc 2.28+ x86-64

pymssql-2.3.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.1 MB 查看哈希)

上传于 CPython 3.7m manylinux: glibc 2.17+ x86-64

pymssql-2.3.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl (3.7 MB 查看哈希)

上传于 CPython 3.7m manylinux: glibc 2.17+ i686

pymssql-2.3.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.7 MB 查看哈希)

上传于 CPython 3.7m manylinux: glibc 2.17+ ARM64

pymssql-2.3.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl (2.9 MB 查看哈希)

上传于 CPython 3.7m manylinux: glibc 2.5+ x86-64

pymssql-2.3.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl (2.8 MB 查看哈希)

上传于 CPython 3.7m manylinux: glibc 2.5+ i686

pymssql-2.3.1-cp36-cp36m-win_amd64.whl (2.0 MB 查看哈希)

上传于 CPython 3.6m Windows x86-64

pymssql-2.3.1-cp36-cp36m-win32.whl (1.3 MB 查看哈希)

上传于 CPython 3.6m Windows x86

由以下提供支持