pymysql为什么更新数据库总提示1054

    sql = "UPDATE arms SET gem2='%s' WHERE id = ('%d')" % ('红玛瑙',new_id)
    (1054, "Unknown column 'gem2' in 'field list'")
    
    
    sql = "UPDATE arms SET gem2='红玛瑙' WHERE id = ('%d')" % new_id
    (1054, "Unknown column 'gem2' in 'field list'")
    这样也会报错这是为什么gem1就不会报错.字符串也加入引号了

图片描述

阅读 3.1k
2 个回答

用下面的这个sql试试?

sql = "UPDATE arms SET gem2='%s' WHERE id = ('%d')" % (pymysql.escape_string('红玛瑙'),int(new_id))

sql应该是没啥问题,尤其是gem1不会报错的情况下。检查一下gem2前后是不是有空格或者换行符。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题