-
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_pure
是True
(默认值),则连接使用纯 Python。如果use_pure
是False
,则连接使用 C 扩展。也可以通过导入
_mysql_connector
模块而不是mysql.connector
模块直接使用 C 扩展。请参阅 _mysql_connector C 扩展模块。
一个新
connect()
选项,consume_results
如果启用,会导致查询生成的结果集被自动消耗和丢弃。连接对象属性表示的can_consume_results
值consume_results
。
作为
mysql.connector.django
引擎,python manage.py inspectdb命令失败并出现“ Unread result found ”错误。(缺陷号 20022533)如果使用选项文件指定了
pool_size
和pool_name
连接参数(而不是显式传递给连接调用),则已成功创建池连接,但在关闭它时会引发异常。(漏洞 #19549363)Django 后端在转换
"0000-00-00 00:00:00"
为None
. (错误#73940,错误#19667984)type_code
incursor.description
不等于 中定义的任何类型 对象mysql.connector.dbapi
。(错误#73798,错误#19584051)TEXT
由于在发送准备语句数据包时数据长度的编码不正确,使用准备语句 在具有类型列的表中插入足够大的数据时发生数据损坏。(错误#73690,错误#19522948)当字符集为 时
binary
,可能会发生字符集转换。不再进行转换,binary
数据按原样返回。(错误#71909,错误#19500097)