MySQL 连接器/Python 发行说明  / MySQL 连接器/Python 2.1 中的更改  /  MySQL 连接器/Python 2.1.1 的变化(2015-02-23,Alpha)

MySQL 连接器/Python 2.1.1 的变化(2015-02-23,Alpha)

C 扩展注释

  • MySQL 连接器/Python 发行版现在可用,其中包括与 MySQL C 客户端库接口的 C 扩展。对于返回大型结果集的查询,与 MySQL 客户端/服务器协议的纯 Python 实现相比,使用 C 扩展可以提高性能。

    对于二进制连接器/Python 分发,某些打包类型具有单个分发文件,其中包含纯 Python 连接器/Python 代码以及 C 扩展。(Windows MSI 和 OS X 磁盘映像包属于此类。)其他打包类型有两个相关的分发文件:一个包含纯 Python 连接器/Python 代码,另一个仅包含 C 扩展。对于具有单独分发文件的打包类型,如果要使用 C 扩展,请安装这两个分发。这两个文件有相关的名称,区别在于包含 C Extension 的文件在分发文件名中 有cext ” 。

    源代码分发包括纯 Python 代码和 C 扩展,分发名称不包含 cext。相反,C 扩展的可用性取决于您是否使用该 --with-mysql-capi选项编译分发。

    带有 C 扩展的连接器/Python 包可在 连接器/Python 下载站点获得。有关安装说明,请参阅 连接器/Python 安装。有关使用 C 扩展的信息,请参阅 连接器/Python C 扩展

    对于支持 C 扩展的连接器/Python 安装, use_pure连接参数 connect()控制是否使用扩展。如果use_pureTrue(默认值),则连接使用纯 Python。如果use_pureFalse,则连接使用 C 扩展。

    也可以通过导入_mysql_connector模块而不是mysql.connector模块直接使用 C 扩展。请参阅 _mysql_connector C 扩展模块

添加或更改的功能

  • 一个新connect()选项, consume_results如果启用,会导致查询生成的结果集被自动消耗和丢弃。连接对象属性表示的can_consume_resultsconsume_results

修正错误

  • 作为mysql.connector.django引擎,python manage.py inspectdb命令失败并出现“ Unread result found错误。(缺陷号 20022533)

  • 如果使用选项文件指定了pool_sizepool_name连接参数(而不是显式传递给连接调用),则已成功创建池连接,但在关闭它时会引发异常。(漏洞 #19549363)

  • Django 后端在转换 "0000-00-00 00:00:00"None. (错误#73940,错误#19667984)

  • type_codein cursor.description不等于 中定义的任何类型 对象mysql.connector.dbapi。(错误#73798,错误#19584051)

  • TEXT由于在发送准备语句数据包时数据长度的编码不正确,使用准备语句 在具有类型列的表中插入足够大的数据时发生数据损坏。(错误#73690,错误#19522948)

  • 当字符集为 时binary,可能会发生字符集转换。不再进行转换, binary数据按原样返回。(错误#71909,错误#19500097)