Python db.cursor-查询结果仅返回第一条记录
我有一种情况,ss可以是一个类似于[30,31,32]的列表。此查询的结果仅返回第一条记录,而不返回其余记录。我不确定出了什么问题。我更改了代码,只是将ss作为列表提供,但在参数转换方面产生了一个错误Python db.cursor-查询结果仅返回第一条记录,python,mysql-python,Python,Mysql Python,我有一种情况,ss可以是一个类似于[30,31,32]的列表。此查询的结果仅返回第一条记录,而不返回其余记录。我不确定出了什么问题。我更改了代码,只是将ss作为列表提供,但在参数转换方面产生了一个错误 ss=flipped.get(key) sss="" for item in ss: sss=sss+"'"+ str(item)+"'," cur4.execute(sqlQ ,str(sss))
ss=flipped.get(key)
sss=""
for item in ss:
sss=sss+"'"+ str(item)+"',"
cur4.execute(sqlQ ,str(sss))
Printf调试对您来说是一个良好的开端:
ss=flipped.get(key)
sss=""
for item in ss:
sss=sss+"'"+ str(item)+"',"
print("[{!r}][{!r}]".format(sqlQ, sss)) ### insert this line
cur4.execute(sqlQ ,str(sss))
然后请检查输出是否符合您的期望
{!r}.formatx等价于{}.formatreprx在交互式控制台上试用您应该考虑为变量ss和sss使用不同的名称,这可能会让人非常困惑。我已经知道查询不是这样写的,因为将引号中的所有值放在一起,但我不知道如何修复它。如果您能告诉我您现在得到的查询字符串以及您想要的内容,我也许能帮你。谢谢。我使用了下面的代码,现在已经解决了。sqlQ=Update Table1 set Field1=1,其中字段2位于%s;%,'。加入['%s']*透镜,