MySQL 连接器/C++ 发行说明  / MySQL 连接器/C++ 1.0 中的更改  /  MySQL Connector/Python 1.0.8 的变化(2012-12-21,全面上市)

MySQL Connector/Python 1.0.8 的变化(2012-12-21,全面上市)

修复了自最初的 1.0.7 GA 版本以来的错误。

修正错误

  • 当使用参数调用存储过程并生成多个结果集时,结果集未正确返回。(漏洞 #15916486,漏洞 #67710)

  • ping()方法总是重新连接到数据库,忽略reconnect 参数。这意味着 在事务期间 ping MySQL 服务器时 会出现回滚

    现在ping()将尊重该 reconnect选项并仅在需要时重新建立连接。(缺陷 #15915243,缺陷 #67650)

  • 连接器/Python 无法使用 IPv6 地址连接到 MySQL 服务器。一个InterfaceError或被 ConnectionRefusedError提出:

    mysql.connector.errors.InterfaceError: 2003: Can't connect to MySQL server on
    'IPv6-style address' (Address family for hostname not supported)
    
    ConnectionRefusedError: [Errno 111] Connection refused

    (错误#15876886,错误#15927825)

  • 从不允许 IP 地址的主机连接到 MySQL 服务器时,连接器/Python 报告握手问题并引发InterfaceError异常。(漏洞 #15836979)

  • 当用户名或密码作为 Unicode 传递给连接器/Python 时, UnicodeDecodeError由于混合字符集类型的字符串连接,连接尝试失败并出现异常。此问题影响在 Python 2 下运行的程序,但不影响 Python 3。(错误 #14843456,错误 #67306)

  • Windows 系统上可能会出现间歇性错误: InterfaceError(errno=2013). 原因是sock.recv()对返回的数据少于请求的数据的库调用的处理不正确。(缺陷 #14829471,缺陷 #67303)

  • 由于命名错误的变量, 套接字错误将产生NameError 异常而不是预期 的异常:InterfaceError

    NameError: global name 'e' is not defined

    (漏洞 #14802017)

  • executemany()函数现在支持 pyformat 参数样式。在 pyformat 样式中,所有替换变量都使用单个字典参数传入,并且%格式说明符像字符串一样进行编码 。现在可以同时使用 ANSI C printf 和 Python 扩展格式代码。(错误#14754894,错误#67146)%(dict_key)sMySQLCursor.executemany()

  • 当非整数值用于 TCP/IP 端口连接参数时,错误消息已得到澄清。(缺陷 #13808727,缺陷 #64543)