mysql unread result found_mysql-connect,python_mysql.connector.errors.InternalError: Unread result f...

mysql.connector.errors.InternalError: Unread result found.

import pandas as pd

import mysql.connector as cnmsq

try:

cnkun = cnmsq.connect(user='root',

password='123456',

host='127.0.0.1',

database='dbkun')

except:

print('failed connect!')

table = pd.read_excel(r'D:\source.xls')

names = list(table['种名'])

acc_or_syn = [None]*len(table)

acc_family = [None]*len(table)

acc_genus = [None]*len(table)

acc_names = [None]*len(table)

acc_fnames = [None]*len(table)

aos_query = "SELECT is_accepted_name, accepted_id FROM kun_species WHERE species_name=%s"

acc_query = "SELECT species_family, species_genus, species_name, species_full_name FROM kun_species WHERE species_id=%s"

cursor = cnkun.cursor()

for i, name in enumerate(names):

cursor.execute(aos_query, (name.strip(),))

for w, s in cursor:

acc_or_syn[i] = w

cursor.execute(acc_query, (s,))

acc_tuple = cursor.fetchone()

acc_family[i], acc_genus[i], acc_names[i], acc_fnames[i] = acc_tuple

上面这段代码的逻辑是从source.xlsx文件中读取某一列,然后根据该列的每一行字符串从mysql数据中找出该字符串及其对应的值,对于绝大部分source.xlsx列中的字符串,在mysql数据表中都仅有一条记录与之对应,也就是说大多数情况下cursor.execute(aos_query, (name.strip(),))内只有一行记录,但当mysql中遇到执行cursor.execute(aos_query, (name.strip(),))出现多于一行记录时,程序就会出错:

Traceback (most recent call last):

File "D:\...py", line 43, in

cursor.execute(acc_query, (s,))

File "C:\Users\...\Anaconda3\lib\site-packages\mysql\connector\cursor.py", line 476, in execute

raise errors.InternalError("Unread result found.")

mysql.connector.errors.InternalError: Unread result found.

请问这是什么原因。

相关阅读:

如何异步编程?

No resource found that matches the given name

Buildbot: Triggering Schedulers, 如何获取参数set_properties设置的值

SQL:如何使用尽可能简单的方式实现这个SQL语句呢?

移动端web页面布局该怎么学

为什么 node可以不用nginx这类软件?

react-router采用browserHistory,eclipse服务器端应该怎样配置?

如何实现根据每个人随机推荐,并且不会重复出现已经推荐过的

p2p cdn快还是普通http cdn快

linux下使用gdb调试core文件如何设置参数

svg和css做同样的效果哪个比较合适

如何实现跨库的事务操作

'D:\\gks\\xmframe/resource/es5/page/page1.js'是什么路径?

web app下iconfont的矢量图标在部分安卓手机自带浏览器、微信/QQ WebView 等上面无法显示

angularjs如何实现图片延迟加载?

新手用nginx,有几个问题问下大神们

nodejs连接oracle数据

静态布局和样式css问题

移动端页面通过前端方法禁止ios页面横屏?

设置了跨域,CORS 头 'Access-Control-Allow-Origin' 不匹配 '*,XXX'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值