我正在编写一个python脚本,它从一个名为octopart的网站访问数据,并将数据插入MySQL表。最终目标是:
我已经包括了下面应该执行的代码(4.)。我仍然得到一个1062重复输入错误。有什么建议吗?你知道吗
变量:
value['display\u value']:为每个数据块添加到mylistv的下一个值
heads = ','.join(str(i) for i in mylisth)
#create string input of %s corresponding to number of entries in mylisth
placelst = ['%s' for i in mylisth]
placestr = ','.join(str(i) for i in placelst)
#add_capacitor -> SQL query line // data_capacitor -> values to be inserted using query line
duplicate_check = ("SELECT * FROM capacitors")
add_capacitor = ("INSERT INTO capacitors ("+heads+") VALUES ("+placestr+")")
replace_capacitor = ("REPLACE INTO capacitors ("+heads+") VALUES ("+placestr+")")
data_capacitor = mylistv
cursor.execute(duplicate_check)
rows = cursor.fetchall()
for row in rows:
for col in row:
if col == value['display_value']:
cursor.execute(replace_capacitor, data_capacitor)
else:
cursor.execute(add_capacitor, data_capacitor)
emp_no = cursor.lastrowid
cnx.commit()
time.sleep(1)
也许您应该使用^{} 。然后,您不必选择并重新处理表中的每一行,只需通过一次对^{} 的调用插入该数据,并让MySQL引擎在出现重复键时处理更新:
相关问题 更多 >
编程相关推荐