不相容的变化:原始消息传递给
errors.error()
没有以可以检索的方式保存。相反,这是错误.msg.
属性由错误编号和SQLState值格式化。现在只保存原始消息错误.msg.
属性。可以通过打印或获取错误对象的字符串表示来获得格式化的值与错误号和SQLState值。例子:尝试:conn = mysql.connector.connect(数据库=“baddb”)除mysql.connector.error之外,作为e:print“错误代码:”,e.erno#错误编号打印“sqlstate值:”,e.sqlstate#sqlstatevalue Print“错误消息:”,e.msg#错误消息打印“错误:”,e#errno,sqlstate,msg值s = str(e)打印“错误:”,s#errno,sqlstate,msg值
(bug#16933795)
单位测试的输出没有显示时间,使得调试涉及测试执行时间的变化的问题更加困难。unittest.py.py.现在有一个新的
- 哈特
运行测试并显示每个测试的选项。还可以将数据保存到MySQL服务器。当。。。的时候
- stats-host.
选择其他选项(如)- stats-user.
,结果保存到一个叫做的表myconnpy_x_y_z.
。该表包含组合Python和MySQL版本的测试用例和列的名称;例如,py27my55或py33my56。例如,要查看MySQL 5.1和5.6之间的差异,使用Python 2.7,在使用Connector / Python 1.1.0运行测试用例后,使用此语句:
选择Test_case,Py27my51,Py27my56,(Py27my56-py27my51)从MyConnpy_1_1_0中的Diff51,其中(py27my56-py27my51)> 0.5;
(bug#17028999)
连接器/ python现在包括一个
mysql.connector.django.
模块为MySQL提供Django后端。此后端支持MySQL 5.6中的新功能,例如Fractional秒支持时间数据类型。有关更多信息,请参阅连接器/ python django后端。MySQL Connector / Python现在支持具有这些特性的简单连接池:
池在提供与请求者的连接时打开许多连接并处理线程安全性。
连接池的大小在池创建时间可配置。此后不能调整大小。
连接池可以在池创建时间点名。如果没有给出任何名称,则使用连接参数生成一个。
可以从从中获得的连接池或连接中检索连接池名称。
可以具有多个连接池。这使应用程序能够支持与不同的MySQL服务器的连接池。
对于每个连接请求,池提供下一个可用连接。没有使用循环或其他调度算法。
可以重新配置池所使用的连接参数。这些应用于此后从池中获得的连接。通过调用连接重新配置从池中获取的各个连接
config()
不支持方法。
可以从连接池中受益的应用程序包括:
中间件维护到多个MySQL服务器的多个连接,并需要随时可用连接。
网站可以拥有更多“永恒的“连接到MySQL Server的连接。
连接池实现涉及这些接口元素:
一个新模块,
mysql.connector.pooling.pooling.
,提供两类:mysqlconnectionpool.
实例化并管理连接池,pooledmysqlconnection.
类似于mysqlconnection.
但用于连接池的一部分的连接。一个新的例外,
PAMERERROR.
,发生与池相关的例外情况发生。PAMERERROR.
是一个子类错误
。
有关更多信息,请参阅连接器/ Python连接池。
下列的
fetchone()
或者fetchmany()
,结果返回fetchall()
缺少一排。(bug#17041412)以前,在关闭连接后执行语句提出了一个
运作
错误错误。连接器/ Python现在返回客户端错误2006,MySQL Server已经消失了
,有额外的消息。这
错误()
课程已扩展以接受新的论点,extra_msg.
。给定时,它在括号之间附加。例如:[2000]未知的MySQL错误(一些额外的消息)
(bug#17022399)加载数据本地
对于大约14MB或更大的文件失败。(bug#17002411)调用
Executemany()
没有任何数据产生的编程错误
而不是做任何事情。(bug#16660356)一个
内部错误
如果出现未读结果,在交易回滚期间提出。这mysqlconnection.rollback()
方法现在消耗未读结果而不是提出错误。(bug#16656621)Python 2.6和2.7提出了一个
unicodedecodeerror.
什么时候unicode_literal.
使用了,并包含一个数据库名称unicode字符。(bug#16655208)这
mysqlcursor.executemany()
方法在执行时使用SQL函数作为列值时提出了异常插
陈述。(bug#69675,bug#17065366)不清楚
运作
如果在有未读结果的同时关闭游标对象,则提出。连接器/ python现在提出了一个内部错误
表示仍有未读结果。这提供了通过读取所有行来避免错误的信息,以避免错误。(bug#67649,bug#17041240)