我试图执行此操作:
cursor.execute("UPDATE 'produit' SET 'Top 1'=%s, 'Top 2'=%s, 'Top 3'=%s WHERE 'Id'=%s " % (n[2],n[1],n[0],i+1))
conn.commit()
但是我收到以下错误:
您的SQL语法有错误;检查手册 对应于您的MariaDB服务器版本,以获得正确的语法 靠近'' produit' SET' Top 1' = 1,' Top 2' = 3,' Top 3' = 5 WHERE' Id' = 1'在 第1行
答案 0 :(得分:0)
SET 'Top 1'=%s, 'Top 2'=%s, 'Top 3'=%s
我相信 SQL 正在寻找字段名称来代替您'Top 1', 'Top 2', 'Top 3'
的位置。如果您尝试更新第1列,第2列和第3列,则不能以这种方式执行此操作。
答案 1 :(得分:0)
对于愚蠢地包含空格或其他标点符号的表名和列名使用backtics。
不
"UPDATE 'produit' SET 'Top 1'=%s, ...
,而:
"UPDATE `produit` SET `Top 1`=%s, ...