在MySQL数据库中使用多个WHERE子句值更新多个列值时出现错误。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在MySQL数据库中使用多个WHERE子句值更新多个列值时出现错误。相关的知识,希望对你有一定的参考价值。

目前,当我试图使用以下方法更新mysql数据库中的两列时,出现了一个错误 mysql.connector 和python 3.6。当我执行下面的命令时,我得到

你的SQL语法有错误,请查看你的MySQL服务器版本的手册,在第1行'order='1' WHERE (match_id='2051673' AND gametime=80 AND event_name='Pass')'附近查看正确的语法。

但是,据我所知,我的命令是完全合法的。我有什么地方做得不对?谢谢!

for item in pass_list:
    query = """UPDATE events SET event_key=%s AND order=%s 
               WHERE (match_id=%s AND gametime=%s AND event_name=%s)"""
    values = (item[0],item[7],item[1],item[2],item[3])
    cur.execute(query, values)
conn.commit()
conn.close()
答案

不管是好是坏。order 是一个SQL关键字。你可以在它周围打上反勾。

`order`

以上是关于在MySQL数据库中使用多个WHERE子句值更新多个列值时出现错误。的主要内容,如果未能解决你的问题,请参考以下文章

mysql语句where条件中的是啥意思

7_mysql查询之where子句

使用不同的where子句更新多个列

1.《SQL必知必会》--(更新中...)

mysql 查询 - 使用左连接和 where 子句的多个计数

SQL中使用UPDATE更新数据时一定要记得WHERE子句