无法更新mySQL表:python

时间:2016-02-03 10:54:31

标签: python mysql

我正在执行命令

light='L1'
status='on'
c.execute("UPDATE my_table SET %s=%s WHERE user IN('Ali')", (light,status))
它给我一个错误:

(1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''L2'='OFF' WHERE user IN('Ali')' at line 1")

任何人都可以找出我在做错的地方。

我试图在Stack overflow网站上找到类似的问题,但是没有得到任何帮助。如果有人发现它,请不要将其标记为重复。

1 个答案:

答案 0 :(得分:3)

我认为你应该在这里摆脱引用标志:​​

''L2'
正如MySQL所说:

near ''L2'='OFF' WHERE user IN('Ali')

我们走了:

light='L1'
status='on'
sql = "UPDATE my_table SET %s=%%s WHERE user IN('Ali')" %light
c.execute(sql, (status))