You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python使用mysql.connector向MySQL插入数据报参数处理错误如何解决

报错原因
  • mysql.connector的cursor.execute()方法要求传入的参数序列必须是元组、列表等可迭代对象,你代码中定义的val = ('bane')没有在单个元素后加逗号,Python不会将其识别为元组,只会判定为普通字符串类型。方法执行时会尝试遍历字符串拆分参数,和SQL语句中1个占位符的要求不匹配,因此抛出参数处理错误。
  • 代码中execute执行后重复创建cursor的操作为冗余无效代码,无实际作用可以删除。
修复方法

将参数定义修改为标准元组格式(单元素末尾加逗号),删除冗余的cursor创建逻辑即可,修改后代码如下:

import mysql.connector
mydb = mysql.connector.connect(
  host="10.0.72.17",
  user="admin",
  passwd="1qaz!QAZ",
  database="test"
)
mycursor = mydb.cursor()

sql = "INSERT INTO biage(kompaniis_saxeli) VALUES (%s)"
val = ('bane',) # 单元素末尾加逗号,明确为元组类型
mycursor.execute(sql, val)

mydb.commit()

你也可以选择用列表传参,写法为val = ['bane'],同样可以适配参数要求。

内容的提问来源于stack exchange,提问作者user17388930

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 04:36:07