重复删除后插入记录时出现Python Mysql错误

时间:2018-06-12 06:25:11

标签: python mysql

在Python中制作一个Sample脚本,用于从Mysql中重复记录记录,并尝试将大约15k的数据记录插入到Mysql数据库中:
我使用的查询是:

 c2.execute("INSERT INTO dedable_city %s VALUES %s" % (values, lst))

其中'价值观'在列名和' lst'是记录。

这是控制台上的错误:

File "dedupe_main3.py", line 208, in <module>
    c2.execute("INSERT INTO deduped_new_table_city %s VALUES %s" % (values, lst))
/cursors.py", line 205, in execute
    self.errorhandler(self, exc, value)

/connections.py",第36行,在defaulterrorhandler中         提出错误类,错误值     _mysql_exceptions.OperationalError:(1054,&#34;未知栏&#39;无&#39;在&#39;字段列表&#39;&#34;)

这是我打印时的查询:

INSERT INTO deduped_new_table_city (col,col,col,col,col,col,col,col,col,col,col) 
VALUES (val, 'val', 'val', 'val', 'val', val , val , 'val', 'val', val, 'val')

我在这里缺少什么?尝试在线搜索但无济于事。

编辑1:&#39;值&#39;含有

(cluster_id,uniqueid,id,name,hcode,suame,adress,hphone,zipcode,latitude,longitude,rating,city,country)

1 个答案:

答案 0 :(得分:1)

你有错误,你需要括号,它应该是:

c2.execute("INSERT INTO dedable_city (%s) VALUES (%s)" % (values, lst))

或者你需要你的值变量是这样的:

values="(column1,column2,column3)"

同样适用于你的第一个值

修改 你也可以这样试试:

c2.execute("INSERT INTO deduped_new_table_city %s VALUES %s",values, lst)