Python MySQL查询原因错误:编程错误:字符串格式化期间参数数量错误

Python MySQL查询原因错误:编程错误:字符串格式化期间参数数量错误,python,mysql,Python,Mysql,此代码的原因:ProgrammingError:字符串格式化期间参数的数目错误 尝试了很多方法但找不到解决方案…:( 有什么想法吗?为什么要使用引号?要正确执行查询,因为不使用引号可能会导致错误,具体取决于执行查询的服务器……不,在此处使用引号是错误的,如果合适,这些引号将由库自动添加。'%s'将转换为''某些参数',用于string(易受sql注入攻击!)。另外,不要仅使用%d使用%s,在应用格式之前,所有参数都将在内部转换为字符串。感谢Mata!现在正在工作…第一次在没有引号的情况下工作…是

此代码的原因:ProgrammingError:字符串格式化期间参数的数目错误

尝试了很多方法但找不到解决方案…:(


有什么想法吗?

为什么要使用引号?要正确执行查询,因为不使用引号可能会导致错误,具体取决于执行查询的服务器……不,在此处使用引号是错误的,如果合适,这些引号将由库自动添加。
'%s'
将转换为
''某些参数'
,用于string(易受sql注入攻击!)。另外,不要仅使用
%d
使用
%s
,在应用格式之前,所有参数都将在内部转换为字符串。感谢Mata!现在正在工作…第一次在没有引号的情况下工作…是因为wquery中没有格式化变量吗?
    wquery = """UPDATE `cin`.`flags` SET `flag`='%s', `update_time`='%d' WHERE `name`='%s' AND `lockid`='%s'"""
    cursor.execute(wquery, (pic_bin, update_time, cname, lockid,))
    cnx.commit()