Python、sqlite3和UPDATE几行

2024-09-28 03:12:37 发布

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

下面是我要执行的代码

db.execute('''UPDATE WARDWINS \
    SET map = ?, 
    SET team1wards = ?, 
    SET team2wards = ?, 
    SET mostwards = ?, 
    SET winningteam = ?, 
    SET mostwardswin = ? 
    where matchID = ?''', (dic['mapID'][0], dic['team1wards'], dic['team2wards'], dic['mostwards'], dic['winningteam'], dic['wardswins'], match))

我想要实现的是让一个execute命令同时更新上面的所有行,但是由于某些原因,我似乎无法找到如何做到这一点。我收到以下错误消息:

>>> dic['mostwards'], dic['winningteam'], dic['wardswins'], match))
sqlite3.OperationalError: near "SET": syntax error

Tags: 代码mapexecutedbmatchupdatesetdic
1条回答
网友
1楼 · 发布于 2024-09-28 03:12:37

所以,事实证明,答案几乎是正确的。(不总是吗?) sqlite3.execute命令只需要一个集合,其他集合是多余的,因此产生了语法错误。正确的做法如下:

db.execute('''UPDATE WARDWINS \
    SET map = ?, 
    team1wards = ?, 
    team2wards = ?, 
    mostwards = ?, 
    winningteam = ?, 
    mostwardswin = ? 
    where matchID = ?''', (dic['mapID'][0], dic['team1wards'], dic['team2wards'], dic['mostwards'], dic['winningteam'], dic['wardswins'], match))

相关问题 更多 >

    热门问题