pythonsqlite:Update语句类型错误:函数只接受2个参数(给定1个)

2024-06-25 05:59:17 发布

您现在位置:Python中文网/ 问答频道 /正文

因为某些原因,我一直得到

findSenGroup = cur.executemany("UPDATE SEN_Table SET SenNumber = " + senNumStr + " WHERE FormName='" + nameGroup + "'")

TypeError: function takes exactly 2 arguments (1 given) error

使用此更新语句:

findSenGroup = cur.executemany("UPDATE SEN_Table SET SenNumber = " + senNumStr + " WHERE FormGroup='" + nameGroup + "'")

下表所示

enter image description here

senNumStr是要将列更新到的数字。在

nameGroup是我要senNumStr添加tp的行的名称

`````


Tags: tableupdate原因functionwheresetcursen
1条回答
网友
1楼 · 发布于 2024-06-25 05:59:17

我不确定您是否需要在这里使用executemany当您只执行一个语句时。您可以简单地使用:

cur.execute("UPDATE SEN_Table SET SenNumber = " + senNumStr + " WHERE FormName='" + nameGroup + "'")

不过,最好使用参数化查询而不是格式化字符串,以避免SQL注入漏洞:

^{pr2}$

相关问题 更多 >