首页 > 解决方案 > Executemany 与 WHERE 使用列表

问题描述

我正在尝试做这样的事情。

cur.executemany("UPDATE tableA SET Col1 ='S' WHERE Col2 = %s AND Col3= %s ", data [:][0], data [:][4])

其中“数据”是一个列表。我需要对列表(数据)中的每一行进行更新。对于每一行,我需要查找 Clo1 等于元素 0 和 Col2 等于元素 4。

标签: python-3.xsqlite

解决方案


您需要在将列表传递给 之前对其进行转换executemany,提取您需要的元素,可能像这样:

cur.executemany("UPDATE tableA SET Col1 ='S' WHERE Col2 = ? AND Col3= ? ",
    [(row[0], row[4]) for row in data])

推荐阅读