You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python项目执行SQL插入操作遇MariaDB 1064语法错误求助

问题解决:MySQL/MariaDB插入数据时的SQL语法错误

错误原因

你执行的INSERT语句不完整,缺少VALUES子句来指定要插入的数据,同时也没有将准备好的变量传入执行方法,这直接触发了1064语法错误。

修正后的代码

def inputValues():
    supplierValue = choice.get()
    productValue = name.get()
    weightValue = weight.get()
    
    print(supplierValue, productValue, weightValue)

    query_vals = (supplierValue, productValue, weightValue)
    # 补充VALUES占位符,并传入参数
    command_handler.execute("INSERT INTO stock(Supplier, Product, Weight) VALUES (%s, %s, %s)", query_vals)
    db.commit()

关键说明

  • 必须在INSERT语句末尾添加VALUES (%s, %s, %s),其中%s是MySQL连接器的参数占位符,用来对应你要插入的三个字段值。
  • 把query_vals作为第二个参数传给execute()方法,这不仅能修复语法错误,还能避免SQL注入攻击,是数据库操作的安全规范。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 18:12:01