从列表中读取到MySql

时间:2018-08-10 17:28:29

标签: python mysql

这是我的代码,用于从一些数据读取到MySql中,Mysql表包含3列,我想在其中一列中插入一个数组项,每列到一个新行中,并且我不想重复行:

db = MySQLdb.connect("127.0.0.1", "root", "M0", "my", local_infile=True,use_unicode=True, charset="utf8")
cursor = db.cursor()
r=["2","3"]
params = ['?' for item in r]
sql="insert ignore into array (firt,last_name,arrays) values 'nina','sa',(%s);" % ','.join(params)
cursor.execute(sql,r)
db.commit();
db.close()

我也已经研究了这篇帖子[1]

但是,在它们两个上我都遇到此错误:

_mysql_exceptions.ProgrammingError: not all arguments converted during string formatting

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

为什么不能只遍历集合

r=set(["2","3"])
for item in r:
    sql="insert ignore into array (firt,last_name,arrays) values 'nina','sa',({})".format(item)
    cursor.execute(sql)