Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python、sqlite3和更新几行_Python_Sqlite_Set - Fatal编程技术网

Python、sqlite3和更新几行

Python、sqlite3和更新几行,python,sqlite,set,Python,Sqlite,Set,下面是我试图执行的代码 db.execute('''UPDATE WARDWINS \ SET map = ?, SET team1wards = ?, SET team2wards = ?, SET mostwards = ?, SET winningteam = ?, SET mostwardswin = ? where matchID = ?''', (dic['mapID'][0], dic['team1wards'],

下面是我试图执行的代码

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

因此,事实证明,答案几乎是正确的。(不总是这样吗?) 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))

因此,事实证明,答案几乎是正确的。(不总是这样吗?) 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))