You need to enable JavaScript to run this app. Python遍历JSON币种价格列表更新MySQL数据库数据无变化如何解决
优惠活动
大模型
产品
解决方案
定价
更多

Python遍历JSON币种价格列表更新MySQL数据库数据无变化如何解决

问题原因

你写的SQL语句完全不符合MySQL UPDATE 语法规范,导致数据库无法识别执行逻辑,所以没有数据变更。

现有代码的核心错误

  • UPDATE语法结构错误:标准UPDATE语法为 UPDATE 表名 SET 字段名=新值 WHERE 匹配条件,你现有写法既没有SET关键字指定要更新的price字段,也没有WHERE条件定位要修改的行,数据库无法执行操作。
  • 注释掉的测试代码也存在多处错误:括号位置错误、UPDATE语句误用INSERT才会用到的VALUE关键字、占位符错误写为大写%S、字符串值未正确传参。

正确修改代码

把你循环里的数据库执行部分替换为以下代码即可:

for item in json_obj2:
    coin_name = item.get('coin_name')
    price = item.get('price')
    # 标准UPDATE写法,先指定要更新的price字段,再用coin_name匹配对应行
    mycursor.execute("UPDATE liste_coin SET price = %s WHERE coin_name = %s", (price, coin_name))
    # 可以加这行打印确认匹配到的行数,如果返回0说明数据库里没有对应coin_name的记录
    print(f"更新{coin_name},匹配行数:{mycursor.rowcount}")
mydb.commit()

额外排查点

如果执行后打印的匹配行数为0,说明你的liste_coin表中不存在对应coin_name的记录,需要先核对表内的coin_name取值是否和你传入的完全一致。

内容的提问来源于stack exchange,提问作者g rom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 18:57:02