在mysql表中插入python变量时出错

在mysql表中插入python变量时出错,python,mysql,raspberry-pi,Python,Mysql,Raspberry Pi,我正在从事一个raspberry pi项目,在该项目中,我从plc获取数据并将其存储到mysql数据库中 这是我的密码: import minimalmodbus import serial import mysql.connector instrument = minimalmodbus.Instrument('/dev/ttyAMA0',3,mode='rtu') instrument.serial.baudrate=115200 instrument.serial.parity = s

我正在从事一个raspberry pi项目,在该项目中,我从plc获取数据并将其存储到mysql数据库中

这是我的密码:

import minimalmodbus
import serial
import mysql.connector


instrument = minimalmodbus.Instrument('/dev/ttyAMA0',3,mode='rtu')
instrument.serial.baudrate=115200
instrument.serial.parity = serial.PARITY_NONE
instrument.serial.bytesize = 8
instrument.serial.stopbits = 1
instrument.serial.timeout = 0.05


con = mysql.connector.connect(user='root',password='raspberry',host='localhost',
                              database='Fujiplc')

cursor = con.cursor()

try:
    reg_value=instrument.read_register(102)
    print reg_value
    cursor.execute("insert into Register_Values values(%s)",(reg_value))
    print ('One row inserted successfully.')
except IOError:
    print("Failed to read from PLC.")


print (cursor.rowcount)

con.commit()

cursor.close()

con.close()
运行此代码后,出现下一个错误:

Traceback (most recent call last):
  File "/home/pi/rpi_to_plc_read.py", line 22, in <module>
    cursor.execute("insert into Register_Values values(%d)",(reg_value))
  File "/usr/local/lib/python2.7/dist-packages/mysql/connector/cursor.py", line 477, in execute
    stmt = operation % self._process_params(params)
  File "/usr/local/lib/python2.7/dist-packages/mysql/connector/cursor.py", line 355, in _process_params
    "Failed processing format-parameters; %s" % err)
ProgrammingError: Failed processing format-parameters; argument 2 to map() must support iteration
回溯(最近一次呼叫最后一次):
文件“/home/pi/rpi_to_plc_read.py”,第22行,在
cursor.execute(“插入寄存器值(%d)”,(寄存器值))
文件“/usr/local/lib/python2.7/dist packages/mysql/connector/cursor.py”,第477行,在execute中
stmt=操作%self.\u进程\u参数(参数)
文件“/usr/local/lib/python2.7/dist packages/mysql/connector/cursor.py”,第355行,在进程参数中
处理格式参数失败;%s“%err”
编程错误:处理格式参数失败;map()的参数2必须支持迭代
我经历了这么多的解决方案,但问题解决不了。
请帮帮我

python中非常常见的错误

(reg\u值)
不是元组
(reg\u value,)
是python中非常常见的元组错误

(reg\u值)
不是元组
(reg\u value,)
是一个元组,我认为应该是

cursor.execute("insert into Register_Values values(%s)",(reg_value))
con.commit()
我想应该是

cursor.execute("insert into Register_Values values(%s)",(reg_value))
con.commit()

152是程序从plc获取的数据。我还尝试了%d代替%s152是程序从plc获取的数据。我还尝试了%d代替%s