适用于 Python 的 MySQL 连接器:处理未读结果问题
使用适用于 Python 的 MySQL 连接器时经常面临的挑战之一是“未读结果”结果发现”错误。当执行新查询之前未使用先前查询的未处理结果时,通常会发生此错误。
在提供的代码片段中,问题出现在使用游标执行一个循环的循环中。一系列的查询。每次查询后,都会调用游标的 fetchone() 方法来检索第一个结果。但是,当随后使用游标执行新查询时,会引发“发现未读结果”错误。
此行为源于默认情况下游标的无缓冲性质。通过在创建游标时将 buffered 参数设置为 True,所有结果都会立即检索并缓存。这可以防止出现未读结果的问题,并允许重复使用游标而不会遇到错误。
使用缓冲游标的修改代码:
cursor = cnx.cursor(buffered=True) cursor.execute(query,(travel_mode, Orig_lat, Orig_lng, Dest_lat, Dest_lng, time_stamp)) leg_no = cursor.fetchone()[0] # ... Rest of the code ...
以上是如何解决 MySQL Connector for Python 中的'Unread Result Found”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!