我正在执行命令
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网站上找到类似的问题,但是没有得到任何帮助。如果有人发现它,请不要将其标记为重复。
答案 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))