使用mysqlclient执行存储过程报错2014 Commands out of sync; you can't run this command now

在连续执行存储过程,并且存储过程有返回查询结果时,报错2014 Commands out of sync; you can't run this command now;

参考https://blog.csdn.net/ice4026/article/details/37592715

需要使用cursor.nextset(),或者断开connect;

在mysqlclient中的cursor.callproc方法中有一段注释:

Compatibility warning: The act of calling a stored procedure
itself creates an empty result set. This appears after any
result sets generated by the procedure. This is non-standard
behavior with respect to the DB-API. Be sure to use nextset()
to advance through all result sets; otherwise you may get
disconnected.

 

posted @ 2020-03-16 18:46  守望人间  阅读(701)  评论(0)    收藏  举报