我一直在努力找出我一天中大部分时间都去过的地方,但仍然无法解决这个问题,盯着它看的时间太长了,我在学习Python的过程中很早就开始学习&安培;的MySQL。
我建立的查询是:
query = "UPDATE `db`.`%s" % table + "` SET %s" % table + "`.`%s" % field + "` = `%s" % daychangeperc + "` WHERE (`db`.`%s" % table + "`.`id` = %s" % rowid +") LIMIT 1;"
我得到的错误是:
_mysql_exceptions.ProgrammingError:(1064,“您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以便在'.
DayChange = '-0.00736251627767' WHERE (
outofthe_finance附近使用正确的语法.
test1 .
id` = 1)'在第1行“)
任何人都能指出我哪里出错了?我相信这对许多人来说可能是显而易见的。
提前致谢。
答案 0 :(得分:2)
这非常混乱,或许尝试这样做:
query = """UPDATE db.%s SET %s.%s = %s WHERE db.%s.id = %s LIMIT 1""" % (table,table,field,daychangeperc,table,rowid)
答案 1 :(得分:1)
首先,这是您的查询重写,以便格式字符串的所有参数都在最后:
query = "UPDATE `db`.`%s` SET %s`.`%s` = `%s` WHERE (`db`.`%s`.`id` = %s) LIMIT 1;" \
%(table,table,field,daychangeperc,table,rowid)
当您以这种方式查看时,您可以看到SET
关键字后面有一些不平衡的反向标记。我认为这是问题所在,很难看出因为你写了你的字符串。