在执行批量插入SQL时遇到“not enough arguments for format string”错误,可能是因为传递给SQL语句的参数数量不匹配。
根据你的代码,你使用fetchall()获得了数据,但其返回的row不是tuple类型,导致与SQL语句中的占位符数量不一致。因此,使用list1会报错。
而变量a中的数据是tuple,符合SQL语句中占位符的数量要求,因此插入成功。
为了解决这个问题,你可以将fetchall()更改为fetchmany(size),其中size是元组中参数的数量。这样就可以获得正确的tuple数据,避免报错。
以上就是批量插入SQL时出现“not enough arguments for format string”错误怎么办?的详细内容,更多请关注php中文网其它相关文章!